如何禁用未检查的页面上的所有复选框?我是否需要先扫描所有复选框,还是有更简单的方法?我还是一个jQuery新手
答案 0 :(得分:6)
显然用户将无法再次选择它们,因为您已将其禁用...
$(':checkbox:not(:checked)').prop('disabled', true);
请参阅:checkbox
,:not
和:checked
选择器以及prop()
方法。
如果您没有使用jQuery 1.6.x,那么您将不会使用prop()
方法;所以请改用attr()
方法:
$(':checkbox:not(:checked)').attr('disabled', true);
您可以在评论中发布的jsfiddle中看到此内容:http://jsfiddle.net/loktar/LRL2k/1/
答案 1 :(得分:3)
使用checkbox
获取所有复选框,然后使用:not(:checked)
将其过滤为未选中的复选框(:not
docs,:checked
docs)。
$(':checkbox:not(:checked)').attr('disabled', 'disabled');
答案 2 :(得分:3)
这将找到所有不是checked
。
$(':checkbox:not(:checked)');
现在,您可以使用prop
或attr
方法在匹配的复选框上设置disabled
属性。
$(':checkbox:not(:checked)').prop('disabled', true);