console.log(data)
输出:
Object {pid: 1, sibof: "140522864XGHA", naziv: "Kovačič Jože", avrsta: "Televizija"}
当我尝试输出单个值时,它会返回 undefined 。
if (data) {
console.log(data);
var s_stnaloga;
var s_sibof;
var s_stranka;
var s_blago;
var count = 0;
$.each(data, function (i, e) {
s_stnaloga = e.pid;
s_sibof = e.sibof;
s_stranka = e.naziv;
s_blago = e.avrsta;
count++;
});
console.log(s_sibof);
console.log(count);
} else {
console.log('no results');
}
完成控制台输出:
Object {pid: 1, sibof: "140522864XGHA", naziv: "Kovačič Jože", avrsta: "Televizija"}
undefined
4
答案 0 :(得分:4)
使用each
,您可以使用i
作为键并以e
作为值来迭代对象拥有的属性:
$.each(data, function(i, e) {
// 'i' will have keys, i.e. '"pid"', '"sibof"', etc.
// 'e' will have values, i.e. '1', '"140522864XGHA"', etc.
});
...结果count
最后为4(按data
对象中的属性数量)。
但是,由于data
是一个对象本身(不是一个对象数组!),而你只是从中选择了属性值,所以你根本不应该使用each
:
s_stnaloga = data.pid;
s_sibof = data.sibof;
s_stranka = data.naziv;
s_blago = data.avrsta;
答案 1 :(得分:0)
由于data
是单个对象,而不是数组,因此您不需要循环。
var s_stnaloga = data.pid;
var s_sibof = data.sibof;
var s_stranka = data.naziv;
var s_blago = data.avrsta;