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>

你可能感兴趣的:(checkbox)