我使用以下函数通过jQuery AJAX将表单发送到:
$('form#add_systemgoal .error').remove();
var formdata = $('form#add_systemgoal').serialize();
$.ajaxSetup({async: false});
$.ajax({
type: "POST",
url: '/admin/systemgoalssystemgoalupdate?format=html',
data: formdata,
success: function (data) {
console.log(data);
},
});
它可以正常发布,但我无法解析响应,它按如下方式记录到控制台
{
"success": 1,
"inserted": {
"goal_id": "67",
"goalsoptions_id": "0",
"user_id": "0",
"value": "dsfdsaf",
"created": "2013-06-05 09:57:38",
"modified": null,
"due": "2013-06-17 00:00:00",
"status": "active",
"actions_total": "0",
"actions_title": "sfdgsfdgdf",
"action_type": "input",
"points_per_action": "1",
"expires": "2013-06-11 00:00:00",
"success": 1
}
}
我相信这就是我正在寻找的回应。
但是,当我尝试执行alert(data.success);
或response对象的任何其他成员时,它是undefined
。
任何建议都很感谢。
发布于 2013-06-05 17:05:41
呼叫
var parsed_data = JSON.parse(data);
应该能够以您想要的方式访问数据。
console.log(parsed_data.success);
现在应显示“%1”
发布于 2013-06-05 17:06:20
$.ajax({
type: "POST",
url: '/admin/systemgoalssystemgoalupdate?format=html',
data: formdata,
success: function (data) {
console.log(data);
},
dataType: "json"
});
发布于 2015-07-25 00:20:14
假设这是您的Json响应
{"Visit":{"VisitId":8,"Description":"visit8"}}
这就是解析响应和访问值的方式
Ext.Ajax.request({
headers: {
'Content-Type': 'application/json'
},
url: 'api/fullvisit/getfullvisit/' + visitId,
method: 'GET',
dataType: 'json',
success: function (response, request) {
obj = JSON.parse(response.responseText);
alert(obj.Visit.VisitId);
}
});
这将向VisitId字段发出警报
https://stackoverflow.com/questions/16935711
复制相似问题