使用jquery选择器将标签html保存到数组javascript中

时间:2017-02-23 15:55:33

标签: javascript jquery html jquery-selectors

我有一个像这样的HTML代码:

<p style:"text-align:center"><label>Question1</label></p>
<p style:"text-align:center"><label>Question2</label></p>
<p style:"text-align:center"><label>Question3</label></p>

所以,我正在使用jquery选择器&#39;&gt;&#39;特别是将标签文本转换为元素&#39; p&#39; (因为我在其他元素中有其他元素&#39; p&#39;)。我的选择器是:

<script>
       var labels= $('p > label').text();
       console.log(labels);
</script>

关键是我得到了一个字符串:&#34; Question1Question2Question3&#34;而不是具有元素的数组。我使用jquery这么新,请帮忙。

2 个答案:

答案 0 :(得分:2)

使用.each()并将每个值推送到数组中。

&#13;
&#13;
var arr = [];
$('p > label').each(function(){
  arr.push($(this).html());
});

console.log(arr);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p style:"text-align:center"><label>Question1</label></p>
<p style:"text-align:center"><label>Question2</label></p>
<p style:"text-align:center"><label>Question3</label></p>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

jQuery.map():将数组或对象中的所有项目翻译为新的项目数组。

摘录:

&#13;
&#13;
var labels = $.map($('p > label'), function(ele, idx) {
    return ele.textContent;
});

console.log(labels);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>


<p style="text-align:center"><label>Question1</label></p>
<p style="text-align:center"><label>Question2</label></p>
<p style="text-align:center"><label>Question3</label></p>
&#13;
&#13;
&#13;