我需要检查每个 li 元素是否有任何值或不使用 jQuery。我在下面提供我的代码。
$("#navbarNavDropdown ul a").each(function() {
if ($(this).find('li').has("ul").length) {
alert('Yeah, we have a ul ' + $(this).text());
} else {
alert('Yeah, we dont have a ul ' + $(this).text());
}
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="navbar-toggleable-sm collapse navbar-collapse justify-content-end" id="navbarNavDropdown">
<ul>
<li><a href="#">Level 1</a>
<ul>
<li><a href="#">Level 2<span class="caret" data-toggle="dropdown"><i class="fa fa-caret-down" aria-hidden="true"></i></span></a>
<ul class="dropdown-menu s-drop">
<li><a href="/vocational-school-programs/fl/jacksonville">Jacksonville</a></li>
</ul>
</li>
</ul>
</li>
<li class="dropdown mega-drop pstatic">
<a href="/admissions" class="mainmenuitem">Admissions<span class="caret" data-toggle="dropdown"><i class="fa fa-caret-down" aria-hidden="true"></i></span></a>
</li>
</ul>
</div>
我的要求是:假设在循环内第一个 li 元素有一些 children( ul
) 值,我想打印文本,而第二个li
元素没有子元素( ul
),因此它将属于 else 部分。如果还检查是否submenu(i.e-Level 2)
有任何ul
价值。我的代码没有按预期工作。
这将解决您的问题。
$("#navbarNavDropdown ul li").each(function() {
if ($(this).find("ul").length) {
alert('Yeah, we have a ul ' + $(this).text());
} else {
alert('No, we dont have a ul ' + $(this).text());
$(this).find('span').remove();
}
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="navbar-toggleable-sm collapse navbar-collapse justify-content-end" id="navbarNavDropdown">
<ul>
<li><a href="#">Level 1</a>
<ul>
<li><a href="#">Level 2<span class="caret" data-toggle="dropdown"><i class="fa fa-caret-down" aria-hidden="true"></i></span></a>
<ul class="dropdown-menu s-drop">
<li><a href="/vocational-school-programs/fl/jacksonville">Jacksonville</a></li>
</ul>
</li>
</ul>
</li>
<li class="dropdown mega-drop pstatic">
<a href="/admissions" class="mainmenuitem">Admissions<span class="caret" data-toggle="dropdown"><i class="fa fa-caret-down" aria-hidden="true"></i></span></a>
</li>
</ul>
</div>
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句