全选练习(一)

getElementsByName,取反练习

基本代码:

 </script>
    window.onload=function() {
        function myClick (idStr , fun){
            var btn =document.getElementById(idStr);
            btn.onclick =fun;
        }
        myClick("all", function(){
            var all=document.getElementsByName("items");
            for(var i =0; i<all.length;i++){
                all[i].checked=!all[i].checked;
            }
        })
        myClick("nothing", function(){
            var nothing=document.getElementsByName("items");
            for(var i =0; i<nothing.length;i++){
                nothing[i].checked=false;
            }
        })
       myClick("recover", function(){
            for(var i =0; i<items.length;i++){
                items[i].checked=!items[i].checked;
            }
        })
    }
</script>

 <div>
    你爱好的运动是?
    <input  type="checkbox" id="chosen"/>全选/全不选
    <br/>
    <input  type="checkbox" name="items" value="瑜伽"/>瑜伽
    <input  type="checkbox" name="items" value="羽毛球"/>羽毛球
    <input  type="checkbox" name="items" value="排球"/>排球
    <input  type="checkbox" name="items" value="篮球"/>篮球
    <br/>
    <br/>
    <input  type="button" id="all" value="全选"/>全选
    <input  type="button" id="nothing" value="全不选"/>全不选
    <input  type="button" id="recover" value="反选"/>反选
    <input  type="button" id="commit" value="提交"/>提交
  </div>

由于 var **=document.getElementsByName("items");每个单击响应函数都会用到,可以将其提取卫公共的部分,代码改造如下:

 <script>
    window.onload=function() {
        function myClick (idStr , fun){
            var btn =document.getElementById(idStr);
            btn.onclick =fun;
        }
        var items=document.getElementsByName("items");

        myClick("all", function(){ 
            for(var i =0; i<items.length;i++){
                items[i].checked=true;
            }
        })
        myClick("nothing", function(){    
            for(var i =0; i<items.length;i++){
                items[i].checked=false;
            }
        })
        myClick("recover", function(){
            for(var i =0; i<items.length;i++){
                items[i].checked=!items[i].checked;
            }
        })
    }
</script>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容