Javascript 循环遍历列表元素,以便构建一个数组以在AJAX请求中传递
我想把一堆数据传给我的服务器 所以我有一大堆这样的清单:Javascript 循环遍历列表元素,以便构建一个数组以在AJAX请求中传递,javascript,jquery,ajax,post,httpwebrequest,Javascript,Jquery,Ajax,Post,Httpwebrequest,我想把一堆数据传给我的服务器 所以我有一大堆这样的清单: <ul id="myList"> <li><span class="firstData">10</span><span id="secondData">banana</span></li> <li><span class="firstData">20</span><span id="secondData">g
<ul id="myList">
<li><span class="firstData">10</span><span id="secondData">banana</span></li>
<li><span class="firstData">20</span><span id="secondData">grapefruit</span></li>
<li><span class="firstData">30</span><span id="secondData">apple</span></li>
<li><span class="firstData">40</span><span id="secondData">pear</span></li>
<ul>
- 10香蕉
- 20葡萄柚
- 30苹果
- 40梨
我想在列表中循环并以“firstDataValue\u secondDataValue
”的形式创建数据,这样我就可以建立一个字符串,在我的POST ajax请求中传递出去
类似于value=10_香蕉&;值=20_葡萄柚和amp
等等
如何最好地循环元素以创建我要查找的数据字符串
提前谢谢
$('ul#myList li').each(function(){
//do what you want here
var number = $(this).find('span:first-child').text();
var fruit = $(this).find('span:first-last').text();
//now you have both values do whatever you want with it
});
这将为每个li元素循环这将根据您提供的HTML按您要求的方式建立字符串格式,但将
id
更改为class
,如问题注释中所建议:
您知道重复的
id
s无效,对吗?改用类。=)ID应该是唯一的,如果需要重复的标识符,请使用类:)
var str = '';
$('ul#myList li').each(function(){
var spans = $(this).find('span');
str += 'value='+spans[0].innerHTML+'_'+spans[1].innerHTML+'&';
});