新聞中心
本文列出了CheckBox分級(jí)選中的代碼,代碼很復(fù)雜,需要大家仔細(xì)研究一番,不過您若是明白了這部分代碼,那實(shí)現(xiàn)CheckBox分級(jí)選中絕不是問題。

成都創(chuàng)新互聯(lián)公司專業(yè)為企業(yè)提供漢源網(wǎng)站建設(shè)、漢源做網(wǎng)站、漢源網(wǎng)站設(shè)計(jì)、漢源網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)與制作、漢源企業(yè)網(wǎng)站模板建站服務(wù),十多年漢源做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
CheckBox分級(jí)選中的實(shí)現(xiàn)方法如下:
- "Content-Language" content="zh-cn">
- "Content-Type" content="text/html; charset=gb2312">
- "GENERATOR" content="Microsoft FrontPage 4.0">
- "ProgId" content="FrontPage.Editor.Document">
- CheckBox
- var n=document.getElementsByTagName("INPUT");
- var CheckBoxNum=n.length;
- var tf,SearchNodeName,SearchParentNodeName,SameNodeNum,
SubNodeCheckedNum,SameNodeCheckedNum,SubNodeNum,SubNodeCheckedTF;- function FindParentNode(SubNodeName) //獲取上級(jí)結(jié)點(diǎn)名,并判斷是否被選中
- {
- tf=false; //初始化選中狀態(tài)
- SearchNodeName=SubNodeName;
- t=SubNodeName.lastIndexOf("_"); //判斷是否存在上級(jí)結(jié)點(diǎn)
- if(t!=-1)SearchNodeName=SubNodeName.substring(0,t);//如果存在上級(jí)結(jié)點(diǎn),取得上級(jí)結(jié)點(diǎn)名
- if(document.all(SubNodeName).checked)tf=true;//判斷結(jié)點(diǎn)是否被選中
- return SearchNodeName;
- }
- function CheckSubNode(NodeName) //獲取結(jié)點(diǎn)名,并判斷子結(jié)點(diǎn)是否選中
- {
- SubNodeCheckedTF=false; //初始化子結(jié)點(diǎn)選中狀態(tài)
- SubNodeNum=0; //初始化子結(jié)點(diǎn)數(shù)目
- SameNodeNum=0; //初始化同級(jí)結(jié)點(diǎn)數(shù)目
- SubNodeCheckedNum=0; //初始化子結(jié)點(diǎn)被選中的數(shù)目
- SameNodeCheckedNum=0; //初始化同級(jí)結(jié)點(diǎn)被選中的數(shù)目
- ParentNodeName=FindParentNode(NodeName);//上級(jí)結(jié)點(diǎn)名
- SearchParentNodeName=NodeName;//當(dāng)前結(jié)點(diǎn)名
- d=NodeName.lastIndexOf("_"); //判斷是否存在上級(jí)結(jié)點(diǎn)
- if(d!=-1)SearchParentNodeName=SearchParentNodeName.substring(0,d);//如果存在上級(jí)結(jié)點(diǎn),取得上級(jí)結(jié)點(diǎn)名
- for(i=0;i
- {
- if(n[i].name.length==NodeName.length&&ParentNodeName==FindParentNode(n[i].name)) 字串3
- {
- SameNodeNum+=1; //同級(jí)結(jié)點(diǎn)數(shù)目加一
- if(n[i].checked)SameNodeCheckedNum+=1;//同級(jí)結(jié)點(diǎn)被選中的數(shù)目加一
- }
- if(n[i].name.substring(0,NodeName.length)==NodeName&&n[i].name!=NodeName&&n[i].type=="checkbox")
- {
- SubNodeNum+=1; //子結(jié)點(diǎn)數(shù)數(shù)目加一
- if(n[i].checked)SubNodeCheckedNum+=1;//子結(jié)點(diǎn)被選中的數(shù)目加一
- }
- }
- if((SameNodeNum==1||SameNodeCheckedNum==0)&&(SubNodeCheckedNum==0)&&!document.all(NodeName).checked)
- {
- SubNodeCheckedTF=true; //判斷子結(jié)點(diǎn)是否被選中
- }
- return SearchParentNodeName;
- }
- function CheckAll(BoxName)
- {
- SearchNodeName=BoxName;
- SearchParentNodeName=BoxName
- SubNodeLength=BoxName.split("_").length;
- for(i=0;i
- {
- if(n[i].name.substring(0,BoxName.length)==BoxName&&n[i].name!=BoxName&&n[i].type=="checkbox")
- n[i].checked=document.all(BoxName).checked?true:false; //選中所有子結(jié)點(diǎn)
- }
- for(j=1;j
- {
- document.all(FindParentNode(SearchNodeName)).checked=tf?true:false;
- document.all(CheckSubNode(SearchParentNodeName)).checked=SubNodeCheckedTF?false:true;
- }
- }document.onclick=function(){if(event.srcElement.type=="checkbox")CheckAll(event.srcElement.name);}
- "f1" >
- "checkbox" name="bid">
- "checkbox" name="bid_01">
- "checkbox" name="bid_01_01">
- "checkbox" name="bid_01_02">
- "checkbox" name="bid_01_02_01">
- "checkbox" name="bid_01_02_02">
- "checkbox" name="bid_01_02_02_01">
- "checkbox" name="bid_01_02_02_02">
- "checkbox" name="bid_01_02_02_03">
- "checkbox" name="bid_01_02_02_03_01">
- "checkbox" name="bid_01_02_02_03_02">
- "checkbox" name="bid_01_02_02_03_03">
- "checkbox" name="bid_01_02_02_04">
- "checkbox" name="bid_01_02_03">
"checkbox" name="bid_01_03">
- "checkbox" name="bid_01_04">
- "checkbox" name="bid_02">
- "checkbox" name="bid_03">
- "checkbox" name="bid_04">
- "checkbox" name="ent" checkmain >
- "checkbox" name="ent_01">
- "checkbox" name="ent_01_01">
- "checkbox" name="ent_02">
- "checkbox" name="ent_03">
- "checkbox" name="ent_04">
以上就是實(shí)現(xiàn)CheckBox分級(jí)選中的方法,希望能給大家?guī)韼椭?/p>
分享題目:實(shí)現(xiàn)CheckBox分級(jí)選中的經(jīng)典代碼
轉(zhuǎn)載注明:http://fisionsoft.com.cn/article/dphpeop.html


咨詢
建站咨詢
