<div id="main">
<p>Text1</p>
<p>Text2</p>
<p>Text3</p>
</di>
结果应该是:
["text1","text2","text3"]
<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 将数组转换为字符串。