91枪魂官网手游版:能否麻烦给这段JavaScript程序加点注释。。。有些不理解,谢谢

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/27 23:26:35
<html>
<head>
<script>
function allCheck(){
//alert('haha');
flag = false;
str=document.forms[0].idx;
//alert(str.length);

if(document.all.allChoice.checked==true){
//alert('haha');
flag=true;
//alert(flag);

}else{
//alert('xixi');
flag=false;
}
for(i=0; i<str.length;i++){
document.forms[0].idx[i].checked=flag;
}
}

function unCheck(){
allFlag = true;
str=document.forms[0].idx;
for(i=0; i<str.length;i++){
if(document.forms[0].idx[i].checked==false)
{
allFlag=false;
break;
}
}
document.forms[0].allChoice.checked=allFlag;

}

function getValue(){
str="";
for(i=0;i <document.forms[0].idx.length;i++){
if(document.forms[0].idx[i].checked==true){
str+=document.forms[0].idx[i].value;
}
}
alert(str);
//opener.document.all.result.value = str;
//window.close();

}
</script>
</head>
<body>
<form>
<input type=checkbox name=allChoice value="ALL" onclick="allCheck()">ALL<br>
<li/>
<input type=checkbox name="idx" value="IBM " onclick="unCheck()">IBM<br>
<li/>
<input type=checkbox name="idx" value="Dell " onclick="unCheck()">Dell<br>
<li/>
<input type=checkbox name="idx" value="Lenovo " onclick="unCheck()">Lenovo<br>
<input type=button name=haha value="提值" onclick="getValue()">
</form>
</body>

</html>

感激不仅

本网页是对分级复选框的示范
点击标题为ALL的复选框allChoice激发onclick事件,执行函数allCheck()
allCheck()实现将3个子复选框全选中获全取消
str=document.forms[0].idx;//得到窗体中名字为idx的对象应为有3个同名checkbox所以得到的是这组对象的首地址
str.length则是idx中空间的数目,此网页为3
if(document.all.allChoice.checked==true)判断allchoice复选框是否被选中如果选中标志flag为真否则为假,然后循环通过document.forms[0].idx[i].checked=flag;让子复选框的状态与allChoice等同
而如果单击自浮选框则启动noCheck()
noCheck()是判断单前自复选框的状态是否全为真,如果不全为真则AllChoice为假,全为真AllChoice为真
依然利用循环实现,先给标志附值真,然后循环自复选框,如果有一个为假就改标志为假,最后付给AllChoice
点击提值按钮激发GetValue()事件
此时str转换为字符串变量,循环自复选框将被选中的复选框的值加在str之后(str+=document.forms[0].idx[i].value;)最后用Alert显示出来

<script>
function allCheck(){
//alert('haha');
flag = false;
str=document.forms[0].idx;//取得复选框的个数
//alert(str.length);

if(document.all.allChoice.checked==true){
//alert('haha');
flag=true;//判断all复选框是否选中,选中flag为true;反之。
//alert(flag);

}else{
//alert('xixi');
flag=false;
}
for(i=0; i<str.length;i++){
document.forms[0].idx[i].checked=flag;//循环选中或取消所有复选框的选择,根据上面的flag值决定。
}
}

function unCheck(){//如果单击了任何一个复选框就把all复选框设置成未选中
allFlag = true;
str=document.forms[0].idx;
for(i=0; i<str.length;i++){
if(document.forms[0].idx[i].checked==false)
{
allFlag=false;
break;
}
}
document.forms[0].allChoice.checked=allFlag;

}

function getValue(){//判断复选框如选中的话就取它的值相加在str变量
str="";
for(i=0;i <document.forms[0].idx.length;i++){
if(document.forms[0].idx[i].checked==true){
str+=document.forms[0].idx[i].value;
}
}
alert(str);//显示str变量值
//opener.document.all.result.value = str;
//window.close();

}

<!--总体意思:allCheck()检查是否选择了主Check控件,选择了就全部子Check控件也选择,最后将结果加入到打开些网页的result控件中-->
<!--allCheck为主Check控件,idx为子Check控件-->
<html>
<head>
<script>
function allCheck(){ //当单击了allCheck控件时开始
//alert('haha');
flag = false;
str=document.forms[0].idx;
//alert(str.length);

if(document.all.allChoice.checked==true){//选择了allChocie控件
//alert('haha');
flag=true; //标记为true
//alert(flag);

}else{ //没有选择allChocie时
//alert('xixi');
flag=false; //标记为false
}
for(i=0; i<str.length;i++){ //用for(;;)循环设置子Check控件
document.forms[0].idx[i].checked=flag;
}
}

function unCheck(){ //当有子Check控件没被选择时,则主Check控件钩去掉allChoice.checked=false
allFlag = true;
str=document.forms[0].idx;
for(i=0; i<str.length;i++){ //用for(;;)循环检查是否用子Check控件是否被选择
if(document.forms[0].idx[i].checked==false)
{
allFlag=false; //如果有子Check控件没有被选择时,则设置allFlag标记为flase
break;
}
}
document.forms[0].allChoice.checked=allFlag;//去掉allChoice的钩

}

function getValue(){
str="";
for(i=0;i <document.forms[0].idx.length;i++){//用for(;;)循环检查是否用子Check控件是否被选择
if(document.forms[0].idx[i].checked==true){//如果选择
str+=document.forms[0].idx[i].value;//当子Check控件的值叠加到str变量中
}
}
alert(str); //显示
//opener.document.all.result.value = str; //在打开此网页的result控件中加入str值
//window.close();

}
</script>
</head>
<body>
<form>
<input type=checkbox name=allChoice value="ALL" onclick="allCheck()">ALL<br>
<li/>
<input type=checkbox name="idx" value="IBM " onclick="unCheck()">IBM<br>
<li/>
<input type=checkbox name="idx" value="Dell " onclick="unCheck()">Dell<br>
<li/>
<input type=checkbox name="idx" value="Lenovo " onclick="unCheck()">Lenovo<br>
<input type=button name=haha value="提值" onclick="getValue()">
</form>
</body>

</html>