每当有多个选项的时候,都会有一种想法是:全选,全不选,如果子选项有被选,父选项也得被选。
注意:这里是根据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>