js怎么实现复选框树形菜单勾选父节点,子节点全部勾选。子节点勾选,父节点不勾选。

JavaScript014

js怎么实现复选框树形菜单勾选父节点,子节点全部勾选。子节点勾选,父节点不勾选。,第1张

思路就是:找出父节点的所有子节点的checked的属性设置成与父节点一致即可

我是利用jquery实现,看看是否符合你的要求

<script src="../lib/jquery.js" type="text/javascript"></script>

<script src="../jquery.treeview.js" type="text/javascript"></script>

<script type="text/javascript">

$(function(){

$("#tree").treeview()

$("input[name='ids']").click(function(){

var checkedValue = this.checked

$(this).parent("li").find("input[name='ids']").attr("checked",checkedValue)

})

})

</script>

<ul id='tree'>

<li>

<input type='checkbox' name='ids' id="test"/>

<span class='folder'>test1</span>

<ul>

<li>

<input type='checkbox' name='ids' />

<span class='folder'>test11</span>

</li>

</ul>

<ul>

<li>

<input type='checkbox' name='ids' />

<span class='folder'>test12</span>

<ul>

<li>

<input type='checkbox' name='ids' />

<span class='folder'>test121</span>

</li>

</ul>

</li>

</ul>

</li>

</ul>

<input type="checkbox" onclick="selectAll(this)"/>

<input type="checkbox"/>

<input type="checkbox"/>

<input type="checkbox"/>

function selectAll(checkbox) {

$('input[type=checkbox]').attr('checked', $(checkbox).attr('checked'))

}

这个简单,我写了段代码,你copy过去看下是不是你要的效果!望采纳!!

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312" />

<title>制作树形菜单</title>

<style type="text/css">

div{/*隐藏层*/

display:none

}

a {/*文字链接的背影样式*/

font-size:13px

color: #ffffff

text-decoration: none

background-color:#669933

width:100px

line-height:25px

text-align:center

display: block

border-right:1px solid #ffffff

border-bottom:1px solid #ffffff

}

a:hover {

/*鼠标在文字链接上时的文字背景样式*/

font-size:13px

color: #ffffff

background-color:#ee9d01

width:100px

text-align:center

display: block

}

</style>

<script type="text/javascript">

function show(d){

document.getElementById(d).style.display='block' //显示层

}

function hide(d){

document.getElementById(d).style.display='none' //隐藏层

}

</script>

</head>

<body>

<table border="0" cellspacing="0" cellpadding="0">

<tr>

<td><a href="#" onmousemove="show(1)" onmouseout="hide(1)">手机数码</a></td>

<td><a href="#" onmousemove="show(2)" onmouseout="hide(2)">淘宝集市</a></td>

<td><a href="#" onmousemove="show(3)" onmouseout="hide(3)">品牌商城</a></td>

</tr>

<tr>

<td>

<div id="1" >

<a href="#">手机数码1</a>

<a href="#">手机数码2</a>

<a href="#">手机数码3</a>

</div>

</td>

<td>

<div id="2" >

<a href="#">淘宝集市1</a>

<a href="#">淘宝集市2</a>

<a href="#">淘宝集市3</a>

</div>

</td>

<td>

<div id="3" >

<a href="#">品牌商城1</a>

<a href="#">品牌商城2</a>

<a href="#">品牌商城3</a>

</div>

</td>

</tr>

</table>

</body>

</html>