我有以下html:
<ul id="myList">
<li>
<a class="myListItem li-selected">One</a>
</li>
<li>
<a class="myListItem">Two</a>
</li>
<li>
<a class="myListItem li-selected">Three</a>
</li>
<li>
<a class="myListItem">Four</a>
</li>
<li>
<a class="myListItem">Five</a>
</li>
</ul>
li-selected类是在相应的标签被选中时添加的。我尝试在**$(document).ready()中检查是否有li被选中(有li-selected**类)。因此,我希望每次页面加载时都使用一个布尔值,将其作为参数传递到其他函数中。
我正在尝试类似的操作,但它没有返回true,尽管它应该返回:
$(document).ready(function() {
.
.
.
var hasSelectedItems = $("#myList li").find("a").hasClass("li-selected");
console.log(hasSelectedItems);
.
.
.
});
预期结果:
*hasSelectedItems===true则至少选择一个项目。
*hasSelectedItems===false则不选择任何项。
已解决
事实证明,我试图检查li-selected类是否存在的方式没有问题,但在我试图这样做的时候,我把var hasSelectedItems = $("#myList li").find("a").hasClass("li-selected");
部分放错了地方,并试图找到一个还没有添加的类。所以我把这部分代码移到了添加li-selected类后元素重新呈现时运行,它工作了。
2条答案
按热度按时间vsnjm48y1#
请使用下面的jquery代码查找
a
标记:92dk7w1h2#
您可以更好地查找选择了li类的锚元素的长度: