我有一个页面通过AJAX将一些数据提交到另一个页面,在那里处理它并使用json_encode PHP函数返回。
在我的原始页面上,在AJAX函数中,成功后我获取数据并将其置于警报中以进行测试:
success: function(data){
alert(data);
}
警报输出格式如下:
{"id":2,"item":"my text string"}
不,我需要抓住这个对象的每个部分,并使用jQuery对它们做一些事情。我怎么得到它们?我试过了:data->但它打破了我的JS代码...有点困惑。
答案 0 :(得分:5)
首先,使用dataType
设置确保您获得的数据被jQuery解析为json。
然后使用data.id
或data['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对象。
d= '{"id":2,"item":"my text string"}';
(function(data){
var parsed = JSON.parse(data)
alert(parsed.id)
})(d)