87,991
社区成员
发帖
与我相关
我的任务
分享
<td valign="top">
<table align="center" class="TableBlock">
<tbody><tr title="产品工艺" class="TableHeader">
<td nowrap="nowrap">
<input type="checkbox" onclick="check_all(this,'20');" id="MENU_20_16" name="MENU_20"/>
<img width="16" height="16" src="/img/menu/erp.gif"/>
<label for="MENU_20_16">
<b>产品工艺</b>
</label>
</td>
</tr>
<tr title="产品目录">
<td nowrap="nowrap" class="TableData">
<input type="checkbox" onclick="check_all_next(this,'20_2020');"value="96" id="20_17" name="20"/>
<img width="16" height="16" src="/img/menu/@work_plan.gif"/>
<label for="20_17">产品目录</label>
<br/>
<input type="checkbox" value="97" id="20_2020_18" name="20"/>
<img width="16" height="16" src="/img/menu/work_plan.gif"/>
<label for="20_2020_18">产品目录信息</label>
<br/>
<input type="checkbox" value="98" id="20_2020_19" name="20"/>
<img width="16" height="16" src="/img/menu/work_plan.gif"/>
<label for="20_2020_19">新建产品目录</label>
<br/>
<input type="checkbox" value="114" id="20_2020_20" name="20"/>
<img width="16" height="16" src="/img/menu/work_plan.gif"/>
<label for="20_2020_20">产品目录维护</label>
</td>
</tr>
<tr title="工艺路线">
<td nowrap="nowrap" class="TableData">
<input type="checkbox" onclick="check_all_next(this,'20_2025');" value="126" id="20_21" name="20"/>
<img width="16" height="16" src="/img/menu/@office_Product.gif"/>
<label for="20_21">工艺路线</label>
<br>
<input type="checkbox" value="179" id="20_2025_22" name="20"/>
<img width="16" height="16" src="/img/menu/office_Product.gif"/>
<label for="20_2025_22">工艺路线信息</label>
<br>
<input type="checkbox" value="127" id="20_2025_23" name="20"/>
<img width="16" height="16" src="/img/menu/office_Product.gif"/>
<label for="20_2025_23">工艺路线维护</label>
<br>
<input type="checkbox" value="607" id="20_2025_24" name="20"/>
<img width="16" height="16" src="/img/menu/office_Product.gif"/>
<label for="20_2025_24">工艺路线任务</label>
</td>
</tr>
</tbody>
</table>
</td>
window.onload = function(){
document.onclick = function(e){
e = e || window.event;
//兼容浏览器并获取事件目标
var eTarget = e.srcElement || e.target;
//目标元素的标签
var eType = eTarget.nodeName.toLowerCase();
if(eType == "input"){
//为了直接获取label,这个是针对这个文档的
var contentValue = eTarget.nextSibling.nextSibling.nextSibling.nextSibling;
//检测label下是否有b标签,有的话,取第一个。
var hasB = contentValue.getElementsByTagName("b");
if(0 != hasB.length){
contentValue = hasB[0];
}
//弹出对应的值
alert(contentValue.innerHTML);
//取所有同级的input元素
var eTargetParent = eTarget.parentNode.getElementsByTagName("input");
var eTargetId = eTarget.getAttribute("id");
//取得触发元素的id,并判断是否为这三个id,是的话,代表选择了总类的那个input
if(eTargetId =="MENU_20_16" || eTargetId =="20_17" || eTargetId=="20_21" ){alert("123");
if(eTargetParent[0].checked){
for(var i=1;i<eTargetParent.length;i++){
eTargetParent[i].checked = true;
}
}else{
for(var i=1;i<eTargetParent.length;i++){
eTargetParent[i].checked = false;
}
}
}else{
//否则的话,是选择了分类的input
var flag = 0;
for(var i=1;i<eTargetParent.length;i++){
if(eTargetParent[i].checked == true){
flag++;
}
}
//只要有一个分类input是被选中的状态,那么总类的也是被选中
if(!flag){
eTargetParent[0].checked = false;
}else{
eTargetParent[0].checked = true;
}
}
}
}
};
试试能不能行,不知道这个是在哪搞的代码,写的有些没有层次性,向总类和分类,让总类和分类作为兄弟元素写,还是挺不好的。