我是laravel的新人,请任何帮助。
当我点击删除没有发生任何事情,刷新页面后删除帖子...
我的控制器
public function destroy(Request $request)
{
if(isset($request->id)){
$post = Post::findOrFail($request->id);
$post->delete();
}
}
我的路线
Route::delete('/adminpanel/dashboard/posts/', 'Adminpanel\PostsController@destroy')->name('post.delete');
HTML
<a class="btn btn-danger deletebtn" data-post="{{ $post->id }}">
i class="fas fa-minus"></i></a>
的javascript
<script type="text/javascript">
$(document).on('click', '.deletebtn', function(ev){
let postid = $(this).attr("data-post");
$.ajax({
method: 'DELETE',
url: '{{ route('post.delete') }}',
dataType: 'json',
data: {id:postid,"_token": "{{ csrf_token() }}"},
success: function (data) {
alert(data);
},
error: function (data) {
alert(data);
}
});
});
答案 0 :(得分:2)
试试这个。
选项#1:
<script type="text/javascript">
$(document).on('click', '.deletebtn', function(ev){
let postid = $(this).attr("data-post");
$.ajax({
method: 'DELETE',
url: '{{ route('post.delete') }}',
dataType: 'json',
data: {id:postid,"_token": "{{ csrf_token() }}"},
success: function (data) {
location.reload();
},
error: function (data) {
alert(data);
}
});
});
控制器中的选项#2
public function destroy(Request $request)
{
if(isset($request->id)){
$post = Post::findOrFail($request->id);
$post->delete();
return redirect()->back();
}
}