网页代码如下:
<div class="right_con_div" id="nodiv">
<h2>标题1</h2>
<ul id="id_inner"></ul>
</div>
<div class="right_con_div" id="nodiv">
<h2>标题2</h2>
<ul id="id_inner">
<li>列表1</li>
<li>列表2</li>
</ul>
</div>
用JS代码判断当ul中内容为空的时候,隐藏整个父级div,其它div有内容的不隐藏。
<div class="right_con_div" id="nodiv">
<h2>标题1</h2>
<ul class="id_inner"></ul>
</div>
<div class="right_con_div" id="nodiv">
<h2>标题2</h2>
<ul class="id_inner">
<li>列表1</li>
<li>列表2</li>
</ul>
</div>你在定义id时需要注意,元素的id尽量不要相同。否则不能区分是哪个元素。像现在这种情况ul需要用
相同的 class名 我用了id_inner
<script>
var test=document.getElementsByClassName('id_inner');
for(var i=0 ;i<test.length;i++)
{
var p=test[i].parentNode;
if(p.getElementsByTagName('li').length==0)
{
p.style.display='none';
}
}
</script>追问
<h2>标题1</h2>
<ul class="id_inner"></ul>
</div>
<div class="right_con_div" id="nodiv">
<h2>标题2</h2>
<ul class="id_inner">
<li>列表1</li>
<li>列表2</li>
</ul>
</div>你在定义id时需要注意,元素的id尽量不要相同。否则不能区分是哪个元素。像现在这种情况ul需要用
相同的 class名 我用了id_inner
<script>
var test=document.getElementsByClassName('id_inner');
for(var i=0 ;i<test.length;i++)
{
var p=test[i].parentNode;
if(p.getElementsByTagName('li').length==0)
{
p.style.display='none';
}
}
</script>追问
此乃神人也! 一次测试成功。。。
温馨提示:答案为网友推荐,仅供参考