我尝试声明一个数组,推送数组集合并迭代集合
我的JS:
var colection = [];
var array = ["a1", "a2"];
colection.push(array);
array = ["b1", "b2"];
colection.push(array);
$.each(colection, function(array){
var p = "<p>1:"+array[0] +
"<br>2:"+array[1]+"</p>";
$("#test").append(p);
});
我的HTML:
<div id="test">
</div>
我想要那个结果:
1:a1
2:a2
1:b1
2:b2
但仅返回:
1:undefined
2:undefined
1:undefined
2:undefined
答案 0 :(得分:4)
每个语法中函数的第一个参数实际上是项的索引,因此将脚本更改为:
var colection = [];
var array = ["a1", "a2"];
colection.push(array);
array = ["b1", "b2"];
colection.push(array);
$.each(colection, function(index, array){
var p = "<p>1:"+array[0] +
"<br>2:"+array[1]+"</p>";
$("#test").append(p);
});
JsFiddle:http://jsfiddle.net/9KVnM/
编辑:参考:api.jquery.com/jquery.each
谢谢凯文
答案 1 :(得分:0)
您可以在迭代中使用键值对,如<; p>
$.each(collection, function(i, array){
var p = "<p>1:"+array[0] +
"<br>2:"+array[1]+"</p>";
$("#test").append(p);
});