jquery获取html数据并存储到数组中

时间:2017-08-09 10:35:19

标签: php jquery



var a = $('.opti').map(function() {
    return $(this).attr('value');
}).toArray();

var b = $('.opti').map(function() {
    return $(this).attr('vid');
}).toArray();


console.log(a, b);

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="hidden" class="opti" value="337" vid="231">
&#13;
&#13;
&#13;

输出

[&#34; 337&#34;] [&#34; 231&#34;]

问题:上面的代码是在单独的数组中返回数据,但我想要的是把它们放在一个数组中,例如它将是一个存储的数组是2个值,结果将是[&#34; 337&#34 ;,&#34; 231&#34;。]

2 个答案:

答案 0 :(得分:1)

这是“opti”元素的多个实例的解决方案

var result = [];
$(".opti").each(function () {
  result.push([$(this).val(), $(this).attr("vid")]);
});
console.log(result);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="hidden" class="opti" value="337" vid="231">
<input type="hidden" class="opti" value="336" vid="233">
<input type="hidden" class="opti" value="335" vid="232">

答案 1 :(得分:0)

使用.push方法可以使用多个参数,而.apply可以传递第二个数组的所有元素。

a.push.apply(a,b)