js之checkbox的代码全选/全不选,使用id获取元素,而不是name

每当有多个选项的时候,都会有一种想法是:全选,全不选,如果子选项有被选,父选项也得被选。

注意:这里是根据id来获取元素的,但是不能直接用getElementById,因为那只能返回一个,而不是集合。

直接上代码:全选/全不选

function check_all(obj,id)
{
    var elements = document.getElementsByName("chk[]");
    var str = "" + elements.length;
    for(i = 0;i < elements.length;i++)
    {
        if(elements[i].id == id)
            elements[i].checked = obj.checked;
    }
}
<input id="registBlock" name="block[]" onclick="check_all(this,'sub')" checked="" type="checkbox">
<label><input id="regist" name="chk[]" onclick="check_child(this,'sub')" value="1" checked="" type="checkbox">子模块1</label>
<label><input id="regist" name="chk[]" onclick="check_child(this,'sub')" value="2" checked="" type="checkbox">子模块2</label>
原文地址:https://www.cnblogs.com/riskyer/p/3275543.html