如何使用Jquery将具有特定类的所有元素的内容放入变量中

时间:2014-06-18 19:51:41

标签: jquery

使用Jquery,我想将具有特定类的所有元素的内容放入变量中。这是一个例子:

<div class="foo">
    <div class="bar"><p>First set of text</p></div>
    <div class="bar"><p>Second set of text</p></div>
    <div class="bar"><p>Third set of text</p></div>
    <div class="bar"><p>N set of text</p></div>
</div>

我想将所有div元素的内容放在类&#34; bar&#34;到一个名为&#34; full&#34;的变量中。我尝试了下面的代码,但显然只抓住了第一个div。

var full = $( ".bar" ).html();

我希望我的字符串变量的内容是

"<p>First set of text</p><p>Second set of text</p><p>Third set of text</p><p>N set of text</p>"

如果尝试在互联网上查找但无法找到答案。我正在考虑使用.each方法,但我的一些尝试并没有很好地解决。有什么想法吗?

谢谢!

2 个答案:

答案 0 :(得分:3)

您想要使用.each()

是正确的
var full = '';
$('.bar').each(function () {
    full += $.trim($(this).html());
})
console.log(full);

<强> jsFiddle example

答案 1 :(得分:0)

使用.map(),如下所示:

var full = $( ".bar" ).map(function(){ return this.innerHTML; }).get().join('');

Working Demo

在上面一行中,请注意this.innerHTML是JS等同于jQuery&#39; s $(this).html(),这意味着你也可以使用$(this).html()