我有一个代码:
var name2 = <?php echo $json;?>;
我正在处理 name2 中的数据,如果用户向DB添加一些数据,我想刷新name2中的数据。我使用AJAX并从服务器获取数据:
var json2 = $.parseJSON(data);
EntriesCount =json2.length;
$(json2).each(function(i,val){
$.each(val,function(k,v){
console.log("I = " + i + " | " + k+" -> "+ v);
name2[i][k] = v;
});
});
但是,如果name2中的记录数量少于服务器数据库中的记录,则会出现&#34; unought类型错误(((<((
所以,我可以修复它以及如何在name2中推送新条目。
PS:name2的格式如下:
name2[i]['Name'], name2[i]['Phone'] and so on....
答案 0 :(得分:0)
你需要在&#34; i&#34;创建缺失的项目。指数。这是通过使用typeof运算符检查它的存在来完成的。
var json2 = $.parseJSON(data);
EntriesCount = json2.length;
$(json2).each(function (i, val) {
$.each(val, function (k, v) {
console.log("I = " + i + " | " + k + " -> " + v);
if (typeof name2[i] == "undefined")
name2[i] = {};
name2[i][k] = v;
});
});