为什么这不起作用?我不确定我做错了什么。我确定jquery正在页面上工作。
任何人都可以帮助我吗?提前致谢
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="styles/derweco.css"/>
<script type="text/javascript" src="scripts/jquery-2.1.0.js"></script>
<script type="text/javascript">
$('#numbers').change(function(){
alert('other value');
});
</script>
</head>
<body>
<div id="home">
<select id="numbers">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
</div>
</body>
</html>
答案 0 :(得分:6)
您需要将代码包装在 DOM ready 处理程序$(document).ready(function() {...});
或更短的$(function() {...});
内,以确保在执行之前已正确加载所有DOM元素你的jQuery代码。
$(function() {
$('#numbers').change(function(){
alert('other value');
});
});
<强> Fiddle Demo 强>
答案 1 :(得分:3)
如果你想注册像onchange这样的事件你应该把它放在
中 $(documet).ready(function(){
$('#numbers').change(function(){
alert('other value');
});
});
注意$(documet).ready()等于$(),正如Felix指出的那样!
另请注意,您可以使用普通Javascript应用事件注册,如下所示:
window.onload=function(){};
答案 2 :(得分:2)
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="styles/derweco.css"/>
<script type="text/javascript" src="scripts/jquery-2.1.0.js"></script>
<script type="text/javascript">
$(document).ready(function(){ //Added DOM ready
$('#numbers').change(function(){
alert('other value');
});
});
</script>
</head>
<body>
<div id="home">
<select id="numbers">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
</div>
</body>
</html>