禁用未使用jQuery检查的复选框?

时间:2011-09-14 15:54:00

标签: jquery asp.net

如何禁用未检查的页面上的所有复选框?我是否需要先扫描所有复选框,还是有更简单的方法?我还是一个jQuery新手

3 个答案:

答案 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)');

现在,您可以使用propattr方法在匹配的复选框上设置disabled属性。

$(':checkbox:not(:checked)').prop('disabled', true);