我有一个元素列表,我需要将所有的id传递给ajax查询。有没有一种简洁的方式来创建一个数组或列表中的元素?jQuery将多个项目放入数组并执行ajax调用
<li id="a">...
<li id="b">...
<li id="c">...
我怎么是这样的:项目= “A,B,C”;
我有一个元素列表,我需要将所有的id传递给ajax查询。有没有一种简洁的方式来创建一个数组或列表中的元素?jQuery将多个项目放入数组并执行ajax调用
<li id="a">...
<li id="b">...
<li id="c">...
我怎么是这样的:项目= “A,B,C”;
(function() {
var items = $('li').map(function (index, item) {
return item.id;
}).toArray();
console.log(items);
}());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<li id="a">1</li>
<li id="b">2</li>
<li id="c">3</li>
JavaScript解决方案:
var idArray = [];
document.querySelectorAll('li').forEach(function(e){
idArray.push(e.id);
});
console.log('items='+idArray.join(','))
注:的forEach和querySelectorAll在旧的浏览器不支持。
jQuery的解决方案:
var optionIds = [];
$.each($("li"),function(i,item) { optionIds.push($(item).attr('id')); });
var str= 'items='+ optionIds .join(',');
alert(str);