从JSON对象获取值

时间:2012-11-07 20:42:25

标签: jquery json

我有一个页面通过AJAX将一些数据提交到另一个页面,在那里处理它并使用json_encode PHP函数返回。

在我的原始页面上,在AJAX函数中,成功后我获取数据并将其置于警报中以进行测试:

success: function(data){
   alert(data);
}

警报输出格式如下:

{"id":2,"item":"my text string"}

不,我需要抓住这个对象的每个部分,并使用jQuery对它们做一些事情。我怎么得到它们?我试过了:data->但它打破了我的JS代码...有点困惑。

2 个答案:

答案 0 :(得分:5)

首先,使用dataType设置确保您获得的数据被jQuery解析为json。

然后使用data.iddata['id']来读取id参数

$.ajax({
    url: 'someurl',
    dataType: 'json', // precise this
    success: function(data){
       var id = data.id;
       var item = data.item;
       alert(item);
    }
});

当您的数据为data['id']时,{"some name":9}构造非常有用。

答案 1 :(得分:1)

您的提醒显示您没有正在处理的对象......但只是一个字符串。 您需要首先将数据解析为JSON对象。

http://jsfiddle.net/QNu9Y/

d= '{"id":2,"item":"my text string"}';


(function(data){
    var parsed = JSON.parse(data)
    alert(parsed.id)
       })(d)