本文解析在jQuery中动态获取复选框选中数量的常见错误。通过对比错误使用[checked='checked']属性选择器与正确使用:checked伪类选择器的代码示例,说明为何前者无法实时反映点击状态,并给出获取选中项数量的标准实现方法。
jQuery动态获取复选框选中数量的正确写法
在处理“jquery动态获取复选框checkbox选中的个数”这一需求时,可以参考以下示例代码。
具体实现代码如下:
<input type="checkbox" checked="checked">python<br>
<input type="checkbox" checked="checked">java<br>
<input type="checkbox" >jquery<br>
<input type="checkbox" >phpddt.com<br>
<script src="jquery.js"></script>
<script>
$(function(){
$("input[type='checkbox']").bind("click",function(){alert($("input[type='checkbox'][checked='checked']").length);});
});
</script> 上述代码为复选框绑定了点击事件,意图是获取当前选中的数量。然而,这种写法会导致获取失败:当点击其他复选框时,弹出的数量始终没有变化。

修正后的代码如下:
<script>
$(function(){
$("input[type='checkbox']").bind("click",function(){alert($("input[type='checkbox']:checked").length);});
});
</script>