0

我已经在这个网站上耕耘了很长时间,但找不到如何将这个 json 数组转换为人类可读和可用值的答案。

一个警报体面地显示了这一点:

{"item1":"value1","item2":"value2","item3":"value3"}

我想使用这样的值:

succes: function(data) {
    alert(value1);
    $("#div").append(value1);
}

但似乎我的 Jquery 词汇表中还没有这个。所有警报都给出未定义的值。

肯定可以在这里使用一些帮助!

编辑:

$.ajax({ 
        type: "POST", 
        url: "/include/process/xxxx.php", 
        data: dataString, 
        success: function(data) { 
           alert(data); alert(data.item1); 
        } 
});
4

4 回答 4

2
success: function(data) {
    alert(data.item1); // alerts "value1"
    $("#div").append(data.item1); // appends "value1"
}

item1, 和类似item2的 , etc. 是键。要获取与键关联的值,您必须引用键本身,而不是值(即value1

于 2012-08-03T22:36:20.630 回答
2

如果alert(value1);正在显示,{"item1":"value1","item2":"value2","item3":"value3"}则它不是 json 对象(否则警报会显示类似的内容[object Object])。如果您正在使用$.ajax确保您设置dataType: "json"正确,否则请先尝试在数据上执行此操作。

var obj = $.parseJSON(data);
于 2012-08-03T23:04:34.520 回答
0

您的代码中有一个错字,succes应该是success,您可以这样读取对象的属性:

success: function(data) {
    alert(data.item1);
    $("#div").append(data.item1);
}
于 2012-08-03T22:37:19.817 回答
0

尝试:

alert(data.item1);

您当前正在使用 value1 进行警报,这在您的代码中当时没有任何意义,因此当该警报弹出时,您看不到您的预期。

于 2012-08-03T22:38:08.403 回答