Jquery 子节点与父节点的运用(选中,不选中)

penVe6 2012-08-15 01:37:04

<table width="100%" border="0" cellpadding="0" cellspacing="1">
<tr>
<td width="3%" height="22px"></td>
<td width="30%">地区名称</td>
<td width="8%">菜单等级</td>
</tr>
<tr bgcolor="#FFFFFF">
<td align="left" height="20px">
<input type="checkbox" name="all" id="1" value="1" /></td>
<td align="left" style="padding-left:0px;">重庆市</td>
<td>父级</td>
</tr>
<tr bgcolor="#FFFFFF">
<td align="left" style="padding-left:20px;">
<input type="checkbox" name="all" id="1" value="31" /></td>
<td align="left" style="padding-left:30px;">江北区</td>
<td>二级</td>
</tr>
<tr bgcolor="#FFFFFF">
<td align="left" style="padding-left:20px;">
<input type="checkbox" name="all" id="1" value="32" /></td>
<td align="left" style="padding-left:30px;">沙坪坝区</td>
<td>二级</td>
</tr>
<tr bgcolor="#FFFFFF">
<td align="left" style="padding-left:20px;">
<input type="checkbox" name="all" id="1" value="33" /></td>
<td align="left" style="padding-left:30px;">大渡口区</td>
<td>二级</td>
</tr>
<tr bgcolor="#FFFFFF">
<td align="left" height="20px">
<input type="checkbox" name="all" id="2" value="2" /></td>
<td align="left" style="padding-left:0px;">北京市</td>
<td>父级</td>
</tr>
<tr bgcolor="#FFFFFF">
<td align="left" style="padding-left:20px;">
<input type="checkbox" name="all" id="2" value="38" /></td>
<td align="left" style="padding-left:30px;">海淀区</td>
<td>二级</td>
</tr>
</table>
如何用jquery实现
一、点击“重庆市”的复选框, 就会把“江北区”,“沙坪坝区”,“大渡口区”的复选框给选中,
选中之后 下面的“江北区”,“沙坪坝区” ,“大渡口区”的任意一个复选框是不能取消的,
只能通过点击“重庆市”才能全部取消
二、点击“大渡口区”的复选框, “重庆市”的复选框是不会被选中的
想了一早上了,只做出了点击“重庆市” 把下面3个区给选中,而且还有BUG,所以想有哪位好心人帮帮忙,帮我把这个功能给实现出来 非常感激。
...全文
529 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
penVe6 2012-08-16
  • 打赏
  • 举报
回复

<table width="100%" border="0" cellpadding="0" cellspacing="1">
<tr>
<td width="3%" height="22px"></td>
<td width="30%">地区名称</td>
<td width="8%">菜单等级</td>
</tr>
<tr bgcolor="#FFFFFF">
<td align="left" height="20px">
<input type="checkbox" name="all" id="" did="1" hash=0 value="1" /></td>
<td align="left" style="padding-left:0px;">重庆市</td>
<td>父级</td>
</tr>
<tr bgcolor="#FFFFFF">
<td align="left" style="padding-left:20px;">
<input type="checkbox" name="all" id="1" value="31" /></td>
<td align="left" style="padding-left:30px;">江北区</td>
<td>二级</td>
</tr>
<tr bgcolor="#FFFFFF">
<td align="left" style="padding-left:20px;">
<input type="checkbox" name="all" id="1" value="32" /></td>
<td align="left" style="padding-left:30px;">沙坪坝区</td>
<td>二级</td>
</tr>
<tr bgcolor="#FFFFFF">
<td align="left" style="padding-left:20px;">
<input type="checkbox" name="all" id="1" value="33" /></td>
<td align="left" style="padding-left:30px;">大渡口区</td>
<td>二级</td>
</tr>
<tr bgcolor="#FFFFFF">
<td align="left" height="20px">
<input type="checkbox" name="all" id="" did="2" hash=0 value="2" /></td>
<td align="left" style="padding-left:0px;">北京市</td>
<td>父级</td>
</tr>
<tr bgcolor="#FFFFFF">
<td align="left" style="padding-left:20px;">
<input type="checkbox" name="all" id="2" value="38" /></td>
<td align="left" style="padding-left:30px;">海淀区</td>
<td>二级</td>
</tr>
</table>
$(":checkbox").click(function(){
if($(this).attr("hash")==0){
if($(this).attr("checked")){
$("input[id="+$(this).attr("did")+"]").each(function(){
$(this).attr({checked:true,disabled:true});
});
}else{
$("input[id="+$(this).attr("did")+"]").each(function(){
$(this).attr({checked:false,disabled:false});
});
}
}
});
我做出来了 是这样 不知道有没有人还比我做的简单的 或者我这里有什么错误的 大家都可以指出来。多多学习。谢谢了。
penVe6 2012-08-15
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
ID不能同名的。。。
[/Quote]
你有没有办法把那些id重复的给除去 然后做出刚才所说的功能
gf05011 2012-08-15
  • 打赏
  • 举报
回复
ID不能同名的。。。
penVe6 2012-08-15
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
你的错误在于 标签的ID重复 ;
这种层次关系需要用个标签来体现出来才能方便选择上下级,比如可以加个parentID标签
[/Quote]
因为他们一开始的时候不是关联的 我想通过相同的id 选择的时候会全部选中。
gf05011 2012-08-15
  • 打赏
  • 举报
回复
你的错误在于 标签的ID重复 ;
这种层次关系需要用个标签来体现出来才能方便选择上下级,比如可以加个parentID标签

87,992

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧