js选中第一次全选取消反选都可以第二次就无效了

input type="checkbox" id="showcheckbox" class="checkbox" name="ArchivesId"
$("#btnshow").click(function () {
$("input[name='ArchivesId']").each(function () {
if ($(this).attr("checked")) {
$(this).removeAttr("checked");
}
else {
$(this).attr("checked", "true");
}
})
})

$(this).removeAttr("checked");你这里别用移除,用$(this).attr("checked", "false");

$("#btnshow").click(function() {
$("input[name='ArchivesId']").each(function(n,value) {
if ($(value).attr("checked")) {
$(value).removeAttr("checked");
} else {
$(value).attr("checked", "true");
}
});
});

attr不好用就试试prop


点击

$("#button").unbind("click").click(function (){ if($("#showcheckbox").get(0).getAttribute("checked") != "" && $("#showcheckbox").get(0).getAttribute("checked") != null){ $("#showcheckbox").get(0).removeAttribute("checked"); }else{ $("#showcheckbox").get(0).setAttribute("checked","checked"); } });

jquery操作checkbox、radio这几个input元素坑的。
遇到这种的,你把部分jquery代码换成原生js的。
妥妥的!

这种单选框一类的,使用attr一次之后会失效,可以使用prop这个

这有一个源码,可以借鉴一下。
<!DOCTYPE html>




<br> function checkALL(){<br> var games = document.getElementsByName(&quot;game&quot;);//取到一个数组<br> //即,获取全部选项<br> //document.getElementById(&quot;checkALL&quot;)获取全选框对象<br> //再,checked获取勾选状态<br> var temp = document.getElementById(&quot;checkALL&quot;).checked;<br> console.log(temp);<br> for(var i=0;i&lt;games.length;i++){<br> //checked 表示是否被勾上,true或false<br> //console.log(games[i].checked);<br> games[i].checked = temp;</p> <pre><code> } } &lt;/script&gt; &lt;/head&gt; &lt;body&gt; &lt;input type=&quot;checkbox&quot; name=&quot;game&quot; id=&quot;checkALL&quot; value=&quot;&quot; onclick=&quot;checkALL()&quot;/&gt;全选&lt;br /&gt; &lt;input type=&quot;checkbox&quot; name=&quot;game&quot; id=&quot;&quot; value=&quot;&quot; /&gt;2&lt;br /&gt; &lt;input type=&quot;checkbox&quot; name=&quot;game&quot; id=&quot;&quot; value=&quot;&quot; /&gt;3&lt;br /&gt; &lt;input type=&quot;checkbox&quot; name=&quot;game&quot; id=&quot;&quot; value=&quot;&quot; /&gt;4&lt;br /&gt; &lt;input type=&quot;checkbox&quot; name=&quot;game&quot; id=&quot;&quot; value=&quot;&quot; /&gt;5&lt;br /&gt; &lt;/body&gt; </code></pre> <p></html></p>