Ajax返回,json数据

时间:2013-05-01 02:57:14

标签: jquery ajax

我正在使用ajax请求以及以下函数调用。

var test = initBuild(id);
    test.success(function (data){
    console.log(data);
});

返回的data看起来像

{"built_when":{"id":"43701","clientId":"245","name":"Big Ass Gallery","productId":"0","desc":null,"bgColor":"#000000","fontColor":"ffffff","sort":"43701","clientRef":"205","isFeatured":"0","created":"1367356190","views":"0","finish":"0","isArchive":"0","showMailShare":"0","hardPageFlip":"0","hardCoverFlip":"0","isTemp":"0","agreement":"0","maxChange":"0","countChange":"0","verticalFlip":"0","musicSwitch":"0","showFbShare":"0","twitter":null,"email":"0","pageHeight":"1000","pageWidth":"1391"}} 

我试图通过data.built_when.id访问,但它返回null。我在这个上错过了什么。

由于

2 个答案:

答案 0 :(得分:2)

它以字符串形式返回。使用data = $.parseJSON(data);将其转换为JS结构。或者,您可以在发出JSON时在服务器端设置Content-type: application/json标头

答案 1 :(得分:1)

如果您确定ajax请求的返回类型始终为json,那么您可以将dataType: 'json'设置为ajax选项。

例如:

$.ajax({
    url: '',
    dataType: 'json',
    ....
})