【发布时间】:2014-06-20 17:50:34
【问题描述】:
参考这篇文章 jQuery loop over JSON result from AJAX Success?
返回的 JSON(如 Firebug 中所示):
[
{"NUMBER":"N02939667","BARCODE":"B000615994","LOAD_FK":"7813","CRO":"VONS"},
{"NUMBER":"N02939667","BARCODE":"B000607696","LOAD_FK":"8875","CRO":"VONS"}
]
我的带有嵌套 .each 函数的 AJAX:
$.ajax({
type: "POST",
url: "get_shipment_by_nnumber.php",
data: searchItemDataString,
dataType: 'json',
success: function(g){
if ($.isEmptyObject(g[0].LOAD_FK)){
//validate json returned
}else{
$('.BGresults').empty();
$.each(g, function() {
$.each(this, function(k, v) {
var result = '<strong> ' + searchItem + ': (' + v.BARCODE + ') (Reg ID = ' + v.LOAD_FK + ') (' + v.CRO + ')</strong><br>';
$('.BGresults').append(result);
});
});
};
}
})
我的输出在每个 k/v 对上进行迭代,但没有找到值。我猜是因为我有两个对象,每个对象都有 5 k/v 对,我得到 10 个输出。我在 s.o. 上看过类似的帖子。但我只是没有看到对我有意义的答案。有人可以指出我的错误。谢谢。
N02939667.1-1: (undefined) (Reg ID = undefined) (undefined)
N02939667.1-1: (undefined) (Reg ID = undefined) (undefined)
N02939667.1-1: (undefined) (Reg ID = undefined) (undefined)
N02939667.1-1: (undefined) (Reg ID = undefined) (undefined)
N02939667.1-1: (undefined) (Reg ID = undefined) (undefined)
N02939667.1-1: (undefined) (Reg ID = undefined) (undefined)
N02939667.1-1: (undefined) (Reg ID = undefined) (undefined)
N02939667.1-1: (undefined) (Reg ID = undefined) (undefined)
N02939667.1-1: (undefined) (Reg ID = undefined) (undefined)
N02939667.1-1: (undefined) (Reg ID = undefined) (undefined)
【问题讨论】:
-
第二个中的
v是值而不是对象。你的第二个$.each()正在循环传入的对象。所以k和v的值将是k = "NUMBER", v = "N02939667" then k = "BARCODE", v = "B000615994", etc...
标签: javascript jquery ajax json