js写的全选反选,但不够完善,求指点
菜鸟新人提问:代码如下:<html><head><metacharset="utf-8"><title>无标题文档</title></head><body><inputi...
菜鸟新人提问:
代码如下:
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
</head>
<body>
<input id="box" type="checkbox"/><br>
<div id="div1">
<input type="checkbox"/><br>
<input type="checkbox"/><br>
<input type="checkbox"/><br>
<input type="checkbox"/><br>
</div>
</body>
<script type="text/javascript">
var obox=document.getElementById("box");
var odiv=document.getElementById("div1");
var ach=odiv.getElementsByTagName("input");
obox.onclick=function(){
for(var i=0; i<ach.length;i++){
if(obox.checked==true)
{ach[i].checked=true}
else{ach[i].checked=false}
}
}
</script>
</html>
问题:点击下面的checkbox时,所有的被选中时,第一个也变成选中状态,反之当下面的checkbox有一个不是选中状态,第一个就变成没选中状态?求高手指导 展开
代码如下:
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
</head>
<body>
<input id="box" type="checkbox"/><br>
<div id="div1">
<input type="checkbox"/><br>
<input type="checkbox"/><br>
<input type="checkbox"/><br>
<input type="checkbox"/><br>
</div>
</body>
<script type="text/javascript">
var obox=document.getElementById("box");
var odiv=document.getElementById("div1");
var ach=odiv.getElementsByTagName("input");
obox.onclick=function(){
for(var i=0; i<ach.length;i++){
if(obox.checked==true)
{ach[i].checked=true}
else{ach[i].checked=false}
}
}
</script>
</html>
问题:点击下面的checkbox时,所有的被选中时,第一个也变成选中状态,反之当下面的checkbox有一个不是选中状态,第一个就变成没选中状态?求高手指导 展开
2015-02-08
展开全部
<!DOCTYPE HTML>
<html>
<head>
<meta charset=UTF-8>
<title>YuGiOh</title>
<style type="text/css">
</style>
<script type="text/javascript">
onload = function ()
{
var obox = document.getElementById ("box");
var odiv = document.getElementById ("div1");
var ach = odiv.getElementsByTagName ("input");
obox.onclick = function ()
{
for ( var i = 0; i < ach.length; i++)
{
ach[i].checked = this.checked;
}
}
for ( var i = 0; i < ach.length; i++)
{
ach[i].onclick = function ()
{
if ( !this.checked )
{
obox.checked = false;
}
};
}
}
</script>
</head>
<body>
<label><input id="box" type="checkbox" />全选</label>
<br>
<div id="div1">
<label><input type="checkbox" />1</label><br />
<label><input type="checkbox" />2</label><br />
<label><input type="checkbox" />3</label><br />
<label><input type="checkbox" />4</label><br />
</div>
</body>
</html>
追问
当下面4个checkbox被选中时,能不能让第一个checkbox也变成选中状态,求指点
追答
<script type="text/javascript">
onload = function ()
{
var obox = document.getElementById ("box");
var odiv = document.getElementById ("div1");
var ach = odiv.getElementsByTagName ("input");
obox.onclick = function ()
{
for ( var i = 0; i < ach.length; i++)
{
ach[i].checked = this.checked;
}
};
for ( var i = 0; i < ach.length; i++)
{
ach[i].onclick = function ()
{
if ( !this.checked )
{
obox.checked = false;
}
var flag = true;
for ( var i = 0; i < ach.length; i++)
{
if (!ach[i].checked)
{
flag = false;
break;
}
}
if (flag)
{
obox.checked = true;
}
};
}
}
</script>
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询