jQuery:计算那些没有属性的元素

时间:2014-02-07 15:38:54

标签: javascript jquery class content-length

$("#mytable td").length; 

计算td#mytable的数量。

如何仅在tdtd s中计算没有属性class(没有任何类别)的内容。

2 个答案:

答案 0 :(得分:3)

尽管plalx的回答可能有效,但它很精致,但完全可以这样做:

<td class=""></td>

...这会匹配他的选择器。事实上,这很常见,特别是如果您开始使用单元格上的类,但随后使用removeClasstoggleClass将其删除。

可以肯定的是,你这样做了:

var countWithNoClasses = $("#mytable td").filter(function() {
    return $.trim(this.className) === "";
}).length;

Example | Source

答案 1 :(得分:1)

$("#mytable td:not([class])").length;

以上内容将捕获没有 class属性的元素,以下内容将捕获没有class属性或class=""的元素。

$('#mytable td:not([class]), #mytable td[class=""]').length;

但是你仍然可能遇到类似class=" "之类的问题,所以使用像T.J.已经显示的过滤功能。克劳德会更安全。

$("#mytable td").filter(function() {
    //the replaces just trim the value
    return this.className.replace(/^\s+/, '').replace(/\s+$/, '') === "";
}).length;