我的json数组store
看起来像这样
[{
"role": "Executive Director",
"name": "David Z",
...},
{
"role": "Executive Director",
"name": "David Z",
...},
{
"role": "Non Executive Chairman",
"name": "Hersh M",
...},
{
"role": "Non Executive Director",
"name": "Alex C",
...},
{
"role": "Company Secretary",
"name": "Norman G",
...}]
来自这个数组的出现了几个html表。
我将store
循环到绘制html表作为ajax成功函数的一部分,就像这样
var table = '';
table += '<tr><td......</td>';
$.each(store, function(i, data) {
// draw row...
// draw row etc...
});
table += '</tr></tbody>';
$("#table_d").append(table);
但是对于其中一个表我想跳过David Z
的第二次出现(或者不止一次出现的任何名称)
var table = '';
table += '<tr><td......</td>';
$.each(store, function(i, data) {
if (i > 0, store[i].name != store[i-1].name) {
// draw row...
// draw row etc...
}
});
table += '</tr></tbody>';
$("#table_d").append(table);
数组将始终排序,因此我可以将store[i].name
与store[i-1].name
进行比较,以获得重复的name
。
那么我怎样才能正确表达store[i].name != store[i-1].name
运行循环?
答案 0 :(得分:1)
如果我理解你的问题,我认为你只需要这样做
if(i > 0)
{
if(store[i].name != store[i-1].name)
{
//run code here
}
}
答案 1 :(得分:1)
在每个循环之外:
var names = new Array();
在每个循环中:
if(names.indexOf(store[i].name)==-1){
names.push(store[i].name);
//code here
}