JQuery:在多个选择之间添加空间

时间:2010-07-05 13:16:53

标签: jquery

我在div中选择一些段落:

$('#myDiv p.p1, #myDiv p.p2').text();

我的问题是我想在每个选择之间添加空格,以便输出为:“paragraph1(space)paragraph2”而不是“paragraph1paragraph2”。

有什么想法吗?

2 个答案:

答案 0 :(得分:6)

您可以将.map().get()一起使用来创建单独段落的数组,然后使用.join(" ")将它们连接在一起,并在其间加一个空格。

试试这个:

var result = $('#myDiv p.p1, #myDiv p.p2').map(function() {
    return $.text([this]);
    // return this.innerHTML;              // Alternate means of getting text
    // return this.firstChild.nodeValue;   // Another alternate
}).get().join(" ");

result变量应该让你的段落用空格隔开它们。

编辑:根据 @ J-P 的评论,更新文本检索以提高效率。

答案 1 :(得分:-1)

这样可以解决问题:

$('#myDiv p.p1, #myDiv p.p2').clone().append(' ').text()