js实现checkbox全选,不选,反选
废话少说,先帖代码,然后简述一下遇到的小困难……就是代码中的绿色字体;
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>3</title> </head> <body> <button id="all_yes">全选</button> <button id="all_no">不选</button> <button id="all_ex">反选</button> <input type="checkbox" name="test"> <input type="checkbox" name="test"> <input type="checkbox" name="test"> <input type="checkbox" name="test"> <input type="checkbox" name="test"> <input type="checkbox" name="test"> <script> var all_yes = document.getElementById("all_yes"); var all_no = document.getElementById("all_no"); var all_ex = document.getElementById("all_ex"); var checkboxs = document.getElementsByTagName("input"); function yes(){ for (var i = 0; i < checkboxs.length; i++) { checkboxs[i].checked = true;//这个地方的true或者false是不能够加引号的,checked属性值可以是"checked"或者true和false,前者有"",后者没有. } } function no(){ for (var i = 0; i < checkboxs.length; i++) { checkboxs[i].checked = false; } } function ex(){ for (var i = 0; i < checkboxs.length; i++) { if(checkboxs[i].checked == false){ checkboxs[i].checked = true; }else{ checkboxs[i].checked = false; } } } all_yes.onclick = yes; /*这个地方刚开始的时候写成all_yes.onclick = yes();这样的话在页面加载的时候就会出现,以及全部选择的现象。这是因为如果是yes()的话,浏览器就默认是调用yes()函数,就会自动执行该函数。这个是没有参数的写法。如果是有参数的话,就需要写成 all_yes.onclick = function(){ yes(param01,param02); } */ all_no.onclick = no; all_ex.onclick = ex; </script> </body> </html>
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。