Javascript 如果JSON响应=X->;行动
我正在一个网站上工作,现在我必须制作AJAX表单。我现在的代码确实在数据库中插入了参数,但现在我陷入了以下困境。我希望我的代码在JSON状态为success之后隐藏表单。在MVC中工作。这是我的代码: (我把代码中不重要的部分漏掉了) 阿贾克斯: 控制器:Javascript 如果JSON响应=X->;行动,javascript,php,jquery,json,ajax,Javascript,Php,Jquery,Json,Ajax,我正在一个网站上工作,现在我必须制作AJAX表单。我现在的代码确实在数据库中插入了参数,但现在我陷入了以下困境。我希望我的代码在JSON状态为success之后隐藏表单。在MVC中工作。这是我的代码: (我把代码中不重要的部分漏掉了) 阿贾克斯: 控制器: else { $UserModel = new UserModel(); if ($UserModel->placeAssignment($title, $uploadable, $level, $points, $de
else {
$UserModel = new UserModel();
if ($UserModel->placeAssignment($title, $uploadable, $level, $points, $description)) {
$err['data'] = array("status" => "success", "type" => "success", "return" => "De opdracht is toegevoegd! Joepie :D" );
} else {
$err['data'] = array("status" => "failed", "type" => "danger", "return" => "Er is iets misgegaan!");
}
}
exit( $err['endpoint'] = json_encode( $err['data'], $options = 0 ) );
状态=成功后我想隐藏的部分没有隐藏,所以这是我的问题。我搜索了其他问题,但没有成功。在这种情况下我做错了什么?这种情况下的问题是我在ajax代码中使用了错误的回调。我使用了JSONobj.status,但它必须是:err.status,因为我正以这种方式处理它@蒂莫西格罗特给出了这个答案,现在它起作用了。 我现在的ajax代码:
$.ajax({
type: "POST",
url: "/set/new/ass",
async: true,
data: data,
success: function (data) {
console.log("Het item is toegevoegd");
var err = jQuery.parseJSON(data);
sendAlert.createAlert(err.return, err.type);
if (err.status == 'success') {
$("#submitAssignment").hide();
}
}
});
jsonObj
设置在哪里?我想你的意思是查看err.status
而不是jsonObj.status
你是否调试了代码以查看是否有任何错误,或者代码是否达到了内部if条件,err从来都没有用过。这就是问题所在。现在它确实起作用了:)@WillemDN不客气:)请不要使用“return”作为对象。这是Js的一个关键词。
$.ajax({
type: "POST",
url: "/set/new/ass",
async: true,
data: data,
success: function (data) {
console.log("Het item is toegevoegd");
var err = jQuery.parseJSON(data);
sendAlert.createAlert(err.return, err.type);
if (err.status == 'success') {
$("#submitAssignment").hide();
}
}
});