这是一个非常微不足道的问题,更多的是好奇心。
你们如何在Jquery Ajax调用上返回数据? “成功”或“失败”,0或1,还有什么?
有更好的方法吗?什么是最佳做法?
public function ajaxCheckTask(){
$task = Task::findOrFail(Input::get('id'));
if($task->user_id == Auth::user()->id){
$task->mark();
return 'success';
}
return 'fail';
}
答案 0 :(得分:0)
AJAX表示**Asynchronous** JavaScript and XML
。因此,您无法返回成功或失败,因为请求将是您正在执行的操作的异步,但您可以对成功或失败执行操作。我已经在javascript中提供了一个代码示例(来源:w3schools。万一你想了解更多)
<强> JAVASCRIPT 强>
xmlhttp=new XMLHttpRequest();
xmlhttp.onreadystatechange=function(){
if (xmlhttp.readyState==4 && xmlhttp.status==200){
// Do the success action
}
else{
// Do the failure action
}
}
xmlhttp.open("GET OR POST","URL TO CALL");
xmlhttp.send("DATA TO SEND");
<强> JQUERY 强>
$.ajax({
url: URL, // URL to post the data
method: 'post',// suitable http verb
data: '', // values to be passed with the request
success: function(response) {
// Do the success action
},
failure : function(response){
// Do the failure action
}
});
答案 1 :(得分:0)
这就是你如何调用来自后端的成功消息。
$.ajax({
url: URL,
method: 'post',
dataType: 'json',
data: {"var":"val"}
success: function(response) {
alert(response);
},
failure : function(response){
alert(response);
}
});