AJAX 来电返回 'undefined'
AJAX call returning 'undefined'
AJAX调用如下:
$.get('file.php')
.done(function(data) {
console.log(data);
});
控制台returns:
[{"0":"PS001","code":"PS001"}]
但是如果将日志修改为 console.log(data.code)
它 returns undefined
。此外,使用 each
遍历 JSON:
.done(function, data) {
$.each(data, function(key, value) {
console.log(value.code);
});
)};
导致以下错误:
[Error] TypeError: [{"0":"PS001","code":"PS001"}] is not a valid argument for
'in' (evaluating 'b-1 in a')
JSON 看起来格式正确,所以不确定问题出在哪里?
试试这个,因为你的代码 return json array.
console.log(data[0].code); //If you getting JSON format
或
console.log(JSON.parse(data)[0].code); //If you getting JSON as String
JSON_ENCODE
returns 字符串.
详细了解 JSON_ENCODE
您应该将 JsonArray String 转换为 JsonArray
$.get('file.php')
.done(function(data) {
var arrayObj = JSON.parse(data);
$.each(arrayObj , function(key, value) {
console.log(value.code);
});
});
试试这个:
$.get('file.php')
.done(function(data) {
var json = JSON.parse(data)[0];
console.log(json .code);
});
这是一个json
字符串。你需要先解析它。试试 -
data = $.parseJSON(data);
$.each(data, function(key, value) {
console.log(value.code);
});
AJAX调用如下:
$.get('file.php')
.done(function(data) {
console.log(data);
});
控制台returns:
[{"0":"PS001","code":"PS001"}]
但是如果将日志修改为 console.log(data.code)
它 returns undefined
。此外,使用 each
遍历 JSON:
.done(function, data) {
$.each(data, function(key, value) {
console.log(value.code);
});
)};
导致以下错误:
[Error] TypeError: [{"0":"PS001","code":"PS001"}] is not a valid argument for
'in' (evaluating 'b-1 in a')
JSON 看起来格式正确,所以不确定问题出在哪里?
试试这个,因为你的代码 return json array.
console.log(data[0].code); //If you getting JSON format
或
console.log(JSON.parse(data)[0].code); //If you getting JSON as String
JSON_ENCODE
returns 字符串.
详细了解 JSON_ENCODE
您应该将 JsonArray String 转换为 JsonArray
$.get('file.php')
.done(function(data) {
var arrayObj = JSON.parse(data);
$.each(arrayObj , function(key, value) {
console.log(value.code);
});
});
试试这个:
$.get('file.php')
.done(function(data) {
var json = JSON.parse(data)[0];
console.log(json .code);
});
这是一个json
字符串。你需要先解析它。试试 -
data = $.parseJSON(data);
$.each(data, function(key, value) {
console.log(value.code);
});