Javascript each()循环

Javascript each()循环,javascript,jquery,loops,each,Javascript,Jquery,Loops,Each,我想阅读“.vm video title”-div中的所有链接,并将它们分别发布在同一个div中。因此我制作了以下脚本: $('.vm-video-title').each(function(i) {//all divs $(this).html($(this).html()+$("div.vm-video-title>a").text());//add to div the link }); 但我的问题是,它读取所有div的所有链接并将它们放在一个div中 例如: &l

我想阅读“.vm video title”-div中的所有链接,并将它们分别发布在同一个div中。因此我制作了以下脚本:

$('.vm-video-title').each(function(i) {//all divs
    $(this).html($(this).html()+$("div.vm-video-title>a").text());//add to div the link
    });
但我的问题是,它读取所有div的所有链接并将它们放在一个div中

例如:

<div class="vm-video-title"><a href="...">Text1</a></div>
<div class="vm-video-title"><a href="...">Text2</a></div>
<div class="vm-video-title"><a href="...">Text3</a></div>

输出:

<a href="...">Text1</a>Text1Text2Text3
<a href="...">Text2</a>Text1Text2Text3
<a href="...">Text3</a>Text1Text2Text3
Text1Text2Text3
Text1Text2Text3
Text1Text2Text3
想要的输出:

<a href="...">Text1</a>Text1
<a href="...">Text2</a>Text2
<a href="...">Text3</a>Text3
Text1
文本2
文本3

这应该能帮到你

您需要在循环(el)中的当前元素中找到div


在代码中,您正在div中添加所有匹配的“a”标记的text()(即Text1Text2Text3)

这应该可以帮您完成这项工作

您需要在循环(el)中的当前元素中找到div


在您的代码中,您正在div中添加所有匹配的“a”标记的text()(即Text1Text2Text3)

您就快到了。您需要在当前
div
中找到
a
标记并从中获取文本,而不是:
$(“div.vm-video-title”).text()。我们将此
作为
context
传递,以便在当前
div中选择
a
jQuery(选择器,[context])

$('.vm-video-title').each(function(i) {//all divs
   $(this).html($(this).html()+$("a", this).text());
});

你就快到了。您需要在当前
div
中找到
a
标记并从中获取文本,而不是:
$(“div.vm-video-title”).text()。我们将此
作为
context
传递,以便在当前
div中选择
a
jQuery(选择器,[context])

$('.vm-video-title').each(function(i) {//all divs
   $(this).html($(this).html()+$("a", this).text());
});
您可以选择
方法,在每个方法之后分别附加每个方法的内容

$("div.vm-video-title > a").after(function() { return $(this).text(); });
这不会像方法那样对现有元素进行“先销毁后重新创建”

工作示例:

您可以选择
方法,将每个的内容分别附加在每个内容之后

$("div.vm-video-title > a").after(function() { return $(this).text(); });
这不会像方法那样对现有元素进行“先销毁后重新创建”


工作示例:

在js中使用“this”总是令人困惑,建议尽可能使用命名变量。函数(i,el)。@patrick的方法(
之后的
)更好,因为它不会重新创建dom元素。在js中使用“this”总是令人困惑,建议尽可能使用命名变量。函数(i,el)。@patrick的方法(
之后的
)更好,因为它不会重新创建dom元素。@TheVillageDiot:谢谢:o) @TheVillageIdiot:谢谢o)