我正在努力解决这个问题.我有一个项目列表和一些表格,当某些东西经过验证时,它会将"已检查"类添加到相应的列表项中.
<ul>
<li class="title">Checklist</li>
<li class="checkType checked">Card Type</li>
<li class="checkNumber checked">Card Number</li>
<li class="checkName checked">Name on Card</li>
<li class="checkMonth checked">Expiry Month</li>
<li class="checkYear checked">Expiry Year</li>
<li class="checkCode checked">Security Code</li>
</ul>
.title{font-size:23px; font-weight:bold;}
.checked{ color:#f00;}
Run Code Online (Sandbox Code Playgroud)
但我需要jQuery来检查每个项目是否具有类checkedEXCEPT title.
这可行吗?
演示: http ://jsfiddle.net/bQtEQ/1/
感谢答案,我现在有以下内容
var counting = $("li.checked:not(.title)").length;
if (counting == 6){
console.log(counting);
}
Run Code Online (Sandbox Code Playgroud)
Ben*_*oux 10
这可以通过一个简单的选择器来实现
$("li.checked:not(.title)").length
Run Code Online (Sandbox Code Playgroud)
除了必须减少编码之外,这里的优点:not()是在搜索期间将选择器考虑在内以减少结果集.这意味着jQuery实例化dom元素的时间更少.这意味着更快的执行时间,尤其是在旧浏览器上.
这应该给你所有没有类标题<li>的类' checked' 的元素:
$('li.checked').not('.title').length
Run Code Online (Sandbox Code Playgroud)
但是 - 如果您只想要检查元素的计数:
$('.checked').length
Run Code Online (Sandbox Code Playgroud)
应该足够了.
| 归档时间: |
|
| 查看次数: |
1683 次 |
| 最近记录: |