我希望能够看到jQuery找到的标签内部有什么。为什么以下不起作用?
$("div.UIImageBlock_Content.UIImageBlock_ICON_Content").each ( function() {
alert(($this).html);
});
这样做的正确方法是什么?
答案 0 :(得分:2)
$this
=> $(this)
.html
=> .html()
所以这应该这样做:
$("div.UIImageBlock_Content.UIImageBlock_ICON_Content").each ( function() {
alert($(this).html());
});
请注意,html()
函数只使用innerHTML属性,因此它可以更简单:
$("div.UIImageBlock_Content.UIImageBlock_ICON_Content").each ( function() {
alert(this.innerHTML);
});
答案 1 :(得分:1)
jQuery each
迭代中的当前元素可以通过this
(而不是$this
)进行访问。
然而,有一点需要注意:jQuery迭代中的this
是指每个元素的底层DOM对象,不是 jQuery对象。您可以使用此代码,然后:
$("div.UIImageBlock_Content.UIImageBlock_ICON_Content").each ( function() {
alert(this.innerHTML);
});
您不需要在每次迭代时从原始DOM对象构建jQuery对象 - 元素的内部HTML已经存在于DOM对象中,并且不需要额外的工作。