簡體   English   中英

如何使用jQuery將所有元素的內容放在數組中?

[英]How to put all elements' content in array using jQuery ?

<div id="main">
<p>Text1</p>
<p>Text2</p>
<p>Text3</p>
</di>

結果應該是:

["text1","text2","text3"]

jQuery為此提供.map()

var items = $('#main p').map(function () { return $(this).text(); }).get();

.map()遍歷其元素,在每個元素上調用一個函數,並將函數的返回值記錄在它返回的新數組中。

你也可以用一個簡單的.each()解決這個問題:

var items = [];

$('#main p').each(function (i, e) {
  items.push($(e).text());
});

這將有效:

var p = $('#main p').map(function () {
        return '"' + $(this).text() + '"';
    }).get().join(',');
    p = "[" + p + "]";

map()允許您遍歷每個匹配並從中獲取一個值,該值將插入到類似數組的對象中。 get()然后將其作為Javascript數組返回,而.join將數組轉換為字符串。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM