2011-03-13 62 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

相關問題