我有很多<tr>
元素。每个重要的标记都包含一个包含“highlight-delete”的类名。如何迭代它们的整个集合,并将每个.innerHTML
写入控制台?我试过这个但是失败了
$.each('tr[class*=highlight-delete]', function (index, item) {
console.log(item.innerHTML);
});
答案 0 :(得分:4)
each
函数的第一个参数应该是array
或object
,您传递的是字符串:
jQuery.each(集合,回调(indexInArray,valueOfElement))
$.each($('tr[class*=highlight-delete]'), function (index, item) {
console.log(item.innerHTML);
});
答案 1 :(得分:2)
您可以使用jquery的html()
function
$('tr[class*=highlight-delete]').each(function (index, item) {
console.log($(item).html());
});
答案 2 :(得分:1)
尝试
而不是
item[0].innerHTML;
实际上,item.innerHTML或$(item).html()可以正常工作。
item [0]不会因为我们没有获得包装集而是dom节点。
答案 3 :(得分:1)
$.each()
将集合作为其第一个参数,而不是选择器,因此每个项实际上是字符串的每个字符。
您需要将字符串更改为集合$()
或使用备用$(...).each(function(index, item) {...});
答案 4 :(得分:1)
$('tr[class*=highlight-delete]').each(function (index, item) {
console.log(item.innerHTML);
});
答案 5 :(得分:1)
我知道这是一个旧线程。希望提供一种替代方法来使用jquery的each
。
$('tr[class*=highlight-delete]').get().map((currentValue, index, arr) => {return currentValue.innerHTML;})
答案 6 :(得分:0)
更简单的方法是简单地利用jQuery中的链接。在返回的jQuery对象上使用each
。 this
将绑定到回调函数中的匹配元素。
$('tr[class*=highlight-delete]').each(function(){
console.log(this.innerHTML);
});