一尘不染

使用 jQuery 为复选框设置“checked”

javascript

我想做这样的事情来checkbox使用jQuery打勾:

$(".myCheckBox").checked(true);

或者

$(".myCheckBox").selected(true);

这样的事情存在吗?


阅读 275

收藏
2022-01-09

共1个答案

一尘不染

Modern jQuery

使用.prop()

$('.myCheckbox').prop('checked', true);
$('.myCheckbox').prop('checked', false);

DOM API

如果您只使用一个元素,则始终可以访问底层HTMLInputElement并修改其.checked属性:

$('.myCheckbox')[0].checked = true;
$('.myCheckbox')[0].checked = false;

使用.prop()and.attr()方法代替 this的好处是它们将对所有匹配的元素进行操作。

jQuery 1.5.x 及以下

.prop()方法不可用,因此您需要使用.attr().

$('.myCheckbox').attr('checked', true);
$('.myCheckbox').attr('checked', false);

请注意,这是jQuery 1.6 版之前的单元测试使用的方法,并且最好使用,$('.myCheckbox').removeAttr('checked');因为如果最初选中该框,后者将更改对.reset()包含它的任何表单的调用行为- 一个微妙但可能的不受欢迎的行为改变。

有关更多上下文,checked可以在1.6 版发行说明文档Attributes vs. Properties部分中找到有关从 1.5.x 到 1.6 的过渡中对属性/属性处理的更改的一些不完整讨论。.prop()

2022-01-09