0

我正在使用 ajax 从服务器获取 json 字符串,然后使用 eval 将其转换为对象。当我遍历json数据时,我只得到了密钥。如何获取密钥的值。这就是我所拥有的:

var jsonobj = eval('(' + xmlhttp.responseText + ')');

for (i in jsonobj){
     alert(i);
}

这会提醒按键。如何获取密钥的值?

4

4 回答 4

3

使用子脚本表示法:jsonobj[i]

于 2012-05-31T15:04:09.080 回答
3

试试这个:

var jsonobj = eval('(' + xmlhttp.responseText + ')');
var value;

for (i in jsonobj){
     value = jsonobj[i];
}
于 2012-05-31T15:04:15.973 回答
3

如果服务器返回 JSON,则不需要使用 eval。只需指定dataTypejQuery 就会自动为您解析结果:

$.ajax({
    url: '/script',
    type: 'POST',
    dataType: 'json',
    success: function(result) {
        for (var key in result) {
            if (result.hasOwnProperty(key)) {
                alert('key: ' + key + ', value: ' + result[key]);
            }
        }
    }
});
于 2012-05-31T15:05:39.977 回答
2
var jsonobj = eval('(' + xmlhttp.responseText + ')');

for (i in jsonobj){
    alert(jsonobj[i]);
}
于 2012-05-31T15:05:51.780 回答