使用JavaScript检查/取消选中checkbox?

如何使用JavaScript或jQuery检查/取消选中checkbox?

使用Javascript:

// Check document.getElementById("checkbox").checked = true; // Uncheck document.getElementById("checkbox").checked = false; 

jQuery(1.6+):

 // Check $("#checkbox").prop("checked", true); // Uncheck $("#checkbox").prop("checked", false); 

jQuery(1.5-):

 // Check $("#checkbox").attr("checked", true); // Uncheck $("#checkbox").attr("checked", false); 

尚未提及的重要行为:

以编程方式设置选中的属性,不会触发checkbox的change事件

在这个小提琴里看看你自己:
http://jsfiddle.net/fjaeger/L9z9t04p/4/

(在Chrome 46,Firefox 41和IE 11中进行了小提琴testing)

click()方法

有一天,你可能会发现自己正在编写代码,依赖于被解雇的事件。 为了确保事件触发,调用checkbox元素的click()方法,如下所示:

 document.getElementById('checkbox').click(); 

但是,这会切换checkbox的选中状态,而不是专门将其设置为truefalse 。 请记住,只有当checked属性实际发生更改时,才会触发change事件。

它也适用于jQuery方式:使用propattr设置属性,不会触发change事件。

checked设置为一个特定的值

在调用click()方法之前,您可以testingchecked属性。 例:

 function toggle(checked) { var elm = document.getElementById('checkbox'); if (checked != elm.checked) { elm.click(); } } 

阅读更多关于点击方法在这里:
https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/click

去检查:

 document.getElementById("id of checkbox").checked = true; 

取消选中:

 document.getElementById("id of checkbox").checked = false; 

我们可以检查一个微粒checkbox,

 $('id of the checkbox')[0].checked = true 

并取消选中,

 $('id of the checkbox')[0].checked = false 

我想要注意的是,将“checked”属性设置为非空string会导致一个checkbox。

所以如果你把“checked”属性设置为“false” ,checkbox将被选中。 我必须将值设置为空stringnull或布尔值false以确保checkbox未被选中。

 <script type="text/javascript"> $(document).ready(function () { $('.selecctall').click(function (event) { if (this.checked) { $('.checkbox1').each(function () { this.checked = true; }); } else { $('.checkbox1').each(function () { this.checked = false; }); } }); }); </script> 

尝试这个:

 //Check document.getElementById('checkbox').setAttribute('checked', 'checked'); //UnCheck document.getElementById('chk').removeAttribute('checked'); 
 function setCheckboxValue(checkbox,value) { if (checkbox.checked!=value) checkbox.click(); }