Jquery Ajax select change事件,选择后单击其实控件才触发的问题
这个问题我相信很多人都见过,比如你有一个小拉列表,
选择一项之后要执行一下change事件
而有时候我们会发现,并不是这样,只有我们单击别的组件时才触发,这是怎么回事呢,
其实这不是我们写的代码的,问题,而是放的位置的问题
只要你的事件在这个标签之前就可以正常,如果在这个标签之后就不行,
其实这是Jquery注册的问题,
这点我们以后一定要注意一下
比如我们这样写
[HTML] 纯文本查看 复制代码 <html>
<head>
</head>
<body>
<select id="sex">
<option>男</option>
<option>女</option>
</select>
<script language="javascript" type="text/javascript">
$(document).ready(function () {
$("#sex").change(function () {
//change事件
});
});
</script>
</body>
如这样写那么就不会直接触发,而是你必须单击一下别的控制,或者是说当他失去焦点时才会触发,
但是如果我们安下面的方法写就不一样了
[HTML] 纯文本查看 复制代码 <html>
<head>
<script language="javascript" type="text/javascript">
$(document).ready(function () {
$("#sex").change(function () {
//change事件
});
});
</script>
</head>
<body>
<select id="sex">
<option>男</option>
<option>女</option>
</select>
</body>
这样就正常了。
大家 可以亲手试试,不要因为一个位置而苦恼了。
|