我的代码有什么问题。当我点击复选框时,没有任何事情发生
$(document).ready(function(){
$('input:checkbox[name=drawingNo]').click(function(){alert('I am here');});
});
...
<body>
<form>
<input type="checkbox" name="drawingNo" value="1"> 1 <br>
<input type="checkbox" name="drawingNo" value="2"> 2 <br>
<input type="checkbox" name="drawingNo" value="3"> 3 <br>
<input type="checkbox" name="drawingNo" value="4"> 4 <br>
</form>
</body>
编辑:上面的代码工作正常。发生在我身上的是,标签<input type="checkbox">
是由其他一些脚本生成的,所以当document.ready()启动时,它无法将click事件注册到复选框,因为这些复选框还没有真正存在。所以要修复它:将.click()
更改为.live('click', function(){...})
答案 0 :(得分:4)
你的选择器错了..
以下是最佳格式
$(document).ready(function(){
$("input[name='drawingNo']").live('click', function(){
alert('I am here');
});
});
答案 1 :(得分:1)
在IE,FF和Chrome中,它适用于我。
答案 2 :(得分:1)
使用$ .fn.live ...
$('input:checkbox[name=drawingNo]').live('click',function(){
alert('I am here');
});
答案 3 :(得分:0)
尝试删除':复选框',使其如下所示:
$('input [name = drawingNo]')。click(function(){alert('我在这里');});
更好吗?