我如何处理这个jQuery ajax响应

时间:2013-02-28 09:36:13

标签: javascript jquery ajax

我收到以下

[{"user_id":"1","user_invoice_add1":"Stark Towers","user_invoice_add2":"123 Reginald Street","user_invoice_city":"Newport","user_invoice_state":"New York","user_invoice_country":"US","user_invoice_zip":"321654"}]

如何从中挑选信息?

尝试 data.user_id 数据[0] .user_id 返回未定义

的jQuery

$.post('post.php', qString, function (obj) {
console.log(obj);
}

4 个答案:

答案 0 :(得分:1)

您必须先使用jQuery函数var obj = $.parseJSON(data)将此字符串转换为JSON对象。 它将返回一个您可以访问的JSON对象,如obj[0].user_id

答案 1 :(得分:0)

使用它:

 myObject = jQuery.parseJSON( dataReceived );

然后您可以将数据作为对象的属性

进行访问

答案 2 :(得分:0)

试试这样..

$.map(data.d, function (item) {
     alert(item.user_id)                 
});

答案 3 :(得分:0)

jquery.ajax有一个名为dataType的设置,这是您从服务器获得响应的内容..

  

“json”:将响应评估为JSON并返回JavaScript对象。在jQuery 1.4中,JSON数据以严格的方式解析;任何格式错误的JSON都会被拒绝,并抛出一个解析错误。

$.ajax({
   ....
   dataType:"json",
   success:function(data){
       alert(data.user_id) //no need to parseJSON...dataType does it 
   };
});

使用POST

$.post('post.php', qString, function (obj) {
  console.log(obj);
}, "json");

或者您可以使用$.parseJSON(data)将字符串转换为json对象