我在click()
上有以下Ajax调用,从数据库表中删除记录,但是ajax错误部分代码执行,而不是成功部分。我也得到405的错误,
但是记录会被删除,以下是代码。
$(".DeleteUser").click(function(){
var id = $(this).data("id");
var token = $(this).data("token");
$.ajax(
{
url: "users/"+id,
type: 'DELETE',
dataType: "text",
data: {
"id": id,
"_method": 'DELETE',
"_token": token,
},
success: function ()
{
console.log("it Work");
},
error: function() {
alert('fail');
}
});
console.log("It failed");
});
服务器端代码:
public function destroy($id) {
$user = $this->find($id);
$user->delete();
$notification = array(
'message' => 'User has been Deleted !',
'alert-type' => 'success',
);
return redirect()->route('users.index');
}
答案 0 :(得分:0)
您使用了'键入:" DELETE" &#39 ;.而不是你应该使用'键入:" post"' 。您也可以使用' get'
答案 1 :(得分:0)
你没有结束你的回复。但是重定向到其他页面。
跳过重定向并结束请求 - 响应周期。
public function destroy($id) {
$user = $this->find($id);
$user->delete();
$notification = array(
'message' => 'User has been Deleted !',
'alert-type' => 'success',
);
//return redirect()->route('users.index'); //skip it
header('Content-Type: application/json');
echo json_encode($notification);
}