最近想用jquery扩展一颗js树,但在控制树样式时遇到了以下的问题。先说一下树的结构<ul>
<li><div>节点1</div>
<ul></ul> //没有子节点
</li>
<li><div>节点2</div>
<ul>
<li><div>节点2的子节点1</div><ul></ul></li>
<li><div>节点2的子节点1</div><ul></ul></li>
</ul>
</li>
</ul>
我想取没有子节点的li,或有子节点的li,用jquery的筛选器该怎么写?
<li><div>节点1</div>
<ul></ul> //没有子节点
</li>
<li><div>节点2</div>
<ul>
<li><div>节点2的子节点1</div><ul></ul></li>
<li><div>节点2的子节点1</div><ul></ul></li>
</ul>
</li>
</ul>
我想取没有子节点的li,或有子节点的li,用jquery的筛选器该怎么写?
<script src="js/jquery-1.3.2.js"></script>
<script>
window.onload=function(){
$("li:has(li)").each(function(){alert($(this).html())});
$("li").not("li:has(li)").each(function(){alert($(this).html())});
}
</script>
<ul>
<li><div>节点1</div>
<ul></ul>
</li>
<li><div>节点2</div>
<ul>
<li><div>节点2的子节点1</div><ul></ul></li>
<li><div>节点2的子节点1</div><ul></ul></li>
</ul>
</li>
</ul>
<script src="js/jquery-1.3.2.js"></script>
<script>
window.onload=function(){
$("li:has(li)>div").each(function(){alert($(this).html())});
}
</script>
<ul>
<li><div>节点1</div>
<ul></ul>
</li>
<li><div>节点2</div>
<ul>
<li><div>节点2的子节点1</div><ul></ul></li>
<li><div>节点2的子节点1</div><ul></ul></li>
</ul>
</li>
</ul>