2011-03-13 61 views
3

我有以下标记:把所有元素值在数组

<div class="class1"><p>line1</p><p>line 2</p></div> 

使用jQuery,我怎么可以把专区内的所有p标签的值,并将其放置在一个数组?

回答

7

使用.map()

var arr = $('.class1 p').map(function() { 
    return $(this).text(); 
}).get(); 
+1

你需要.get()吗? – 2011-03-13 01:54:19

+0

@Bjarki,没有'.get()',数组是jQuery-wrapped,*仍然可以工作*,但是你有像'find','click'等没有意义的函数,仍然连接。 – 2011-03-13 02:00:36

+0

好吧让敏感,谢谢你的信息。 – 2011-03-13 02:03:42

2

我会假设你的意思是<p>元素的内容,而不是他们的价值(这是什么)。

var text = []; 
$('.class1 > p').each(function() { 
    text[text.length] = $(this).text(); 
}); 
+0

Box9的解决方案是更习惯的jQuery(可能更好),虽然两者都是有效的。 – 2011-03-13 01:53:22

相关问题