我有来自此链接的代码用于实验目的
jQuery: What's the difference between '$(this)' and 'this'?
$("#orderedlist").find("li").each(function(i) {
$(this).append(" BAM! " + i);
});
代码$(this).append(" BAM! " + i);
如何调用此的子元素?例如
$(this + ".className").append(" BAM! " + i);
类似的东西,但它不起作用。 任何适合这种东西的合成器?
答案 0 :(得分:2)
使用方法.find()
,您可以在对象内搜索所有子级别。
试试这个;
$(this).find(".className").append(" BAM! " + i);
如果您只想搜索第一个子级别,可以使用.children()
这样的
$(this).children(".className").append(" BAM! " + i);
答案 1 :(得分:0)
在您的代码示例中。您正在迭代<li>
中找到的每个#orderedList
,并且您要附加文字BAM! [digit]
,因此$(this)
仅指<li>
如果您.append('<span> BAM! ' + i + '</span>')
,那么您可以找到这样的子跨度:
var child_text = $(this).append('<span> BAM! ' + i + '</span>').find('span').text();
alert(child_text);