我使用以下函数通过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);响应对象的任何其他成员时,它就是undefined。
alert(data.success);
undefined
任何建议表示赞赏。
呼唤
var parsed_data = JSON.parse(data);
应该可以访问所需的数据。
console.log(parsed_data.success);
现在应该显示“ 1”