为什么此事件侦听器不工作
Why does this event listener not work?
我尝试向cars3 id’d段落添加一个事件侦听器,这样当我单击该段落时,它应该执行getValue()方法,但它不起作用。我不明白为什么。谢谢
<!DOCTYPE html>
<html lang="en">
<head>
<script>
function getValue()
{
var x=document.getElementById("cars").value;
document.getElementById("cars2").innerHTML = x.toString();
}
document.getElementById("cars3").addEventListener("click", getValue());
</script>
</head>
<body>
<h1 id="myHeader" onclick="getValue()">"CLICk HERE !" </h1>
<p id="cars3">afaf</p>
<select id="cars" name ="cars">
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="mercedes">Mercedes</option>
<option value="audi">Audi</option></select>
</select>
<p id="cars2">afaf2</p>
</body>
</html>
去掉括号:
addEventListener("click", getValue());
//--------------------------------^^
制作:
addEventListener("click", getValue);
已编辑
同时将脚本标记移动到正文下方。您的代码没有等待页面呈现,因此document.getElementById("cars3")
无法获取元素。
<body>
...
</body>
<script>
function getValue()
...
<script>
这对我来说很有效,你必须去掉函数的"()",并使用文档的事件加载,因为当你的addeventlistener第一次被调用时,html不存在,所以找不到cars3元素。
<!DOCTYPE html>
<html lang="en">
<head>
<script>
function getValue()
{
var x=document.getElementById("cars").value;
document.getElementById("cars2").innerHTML = x.toString();
}
window.onload = function() {
document.getElementById("cars3").addEventListener("click", getValue);
};
</script>
</head>
<body>
<h1 id="myHeader" onclick="getValue()">"CLICk HERE !" </h1>
<div id="cars3">afaf</div>
<select id="cars" name ="cars">
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="mercedes">Mercedes</option>
<option value="audi">Audi</option></select>
</select>
<p id="cars2">afaf2</p>
</body>
</html>
相关文章:
- IE8更改文本区域上的事件侦听器不工作
- 为什么此事件侦听器不工作
- OnChange.attachEvent侦听器不工作
- CSS + jQ插件阻止AJAX调用/事件侦听器工作
- XMLHTTPRequest事件侦听器不工作
- 单击时的Javascript事件侦听器未按预期工作
- 按钮按下的鼠标按下事件侦听器不工作
- 动画结束侦听器无法正常工作
- 为什么我的事件侦听器不在函数内工作
- if.else 在 IIFy 中工作,但不在事件侦听器中工作
- 克隆 jQuery 不是工作侦听器
- Jquery 侦听器在隐身模式镶边中间歇性地工作
- Jquery (2.2.0) 单击侦听器在使用 .on() 时单击几下后停止工作,但 .click() 工作正常
- 谷歌地图添加侦听器无法正常工作
- keydown事件侦听器无法在javascript中工作
- 从iframe检测事件与父级上的jQuery事件侦听器一起工作,但现在使用纯JS
- 在angularjs工厂方法中添加事件侦听器无法按预期工作
- 元素必须可见才能“加载”事件侦听器才能工作
- jQuery animate无法在输入事件侦听器中工作
- 简单事件侦听器不工作-JS