迭代并读取json数据

时间:2012-05-31 15:02:41

标签: javascript ajax json

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

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

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

警告键。如何获得密钥的值?

4 个答案:

答案 0 :(得分:3)

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

答案 1 :(得分:3)

试试这个:

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

for (i in jsonobj){
     value = jsonobj[i];
}

答案 2 :(得分:3)

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

$.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]);
            }
        }
    }
});

答案 3 :(得分:2)

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

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