Javascript 如果列表为空,则隐藏父div
我有以下几点Javascript 如果列表为空,则隐藏父div,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我有以下几点 <div class="validationbox"> <h1>Errors</h1> <ul class="validationerrors"> <li>Error 1</li> <li>Error 2</li> <li>Error 3</li> &l
<div class="validationbox">
<h1>Errors</h1>
<ul class="validationerrors">
<li>Error 1</li>
<li>Error 2</li>
<li>Error 3</li>
</ul>
</div>
错误
- 错误1
- 错误2
- 错误3
错误列表项是动态生成的,因此有时没有,如果没有列表项,我想隐藏“validationbox”div
我想我应该看的是javascript或jquery,有人有任何例子吗?在jquery中,您可以简单地执行以下操作:
$(".validationbox:not(:has(li))").hide();
在纯JavaScript中,您需要迭代“.validationbox”元素,并在其中搜索
节点:
var div = document.getElementsByClassName("validationbox");
for (var i = 0, len = div.length; i < len; i++) {
if (!div[i].getElementsByTagName("li").length) {
div[i].style.display = "none";
}
}
var div=document.getElementsByClassName(“validationbox”);
对于(变量i=0,len=div.length;i
在jQuery中,您可以简单地执行以下操作:
$(".validationbox:not(:has(li))").hide();
在纯JavaScript中,您需要迭代“.validationbox”元素,并在其中搜索
节点:
var div = document.getElementsByClassName("validationbox");
for (var i = 0, len = div.length; i < len; i++) {
if (!div[i].getElementsByTagName("li").length) {
div[i].style.display = "none";
}
}
var div=document.getElementsByClassName(“validationbox”);
对于(变量i=0,len=div.length;i
toggle()
接受布尔值作为参数<代码>$('.validationerrors li')。如果没有元素,则长度将计算为false,否则为true,将显示错误列表
toggle()
接受布尔值作为参数<代码>$('.validationerrors li')。如果没有元素,则长度将计算为false,否则为true,将显示错误列表。您可以使用not
$('div .validationbox').not(':has(li)').hide();
希望对您有所帮助您可以不用
$('div .validationbox').not(':has(li)').hide();
希望它对你有帮助if($(“#validationerrors”).length>1{}if($(“#validationerrors”).length>1{}接受答案,如果它对你有效,它将帮助其他人。接受答案,如果它对你有效,它将帮助其他人。