我希望甜蜜提示框不会删除。
但是找不到ajax的id
路线
Route::get('room/delete/{id}', 'RoomList@destroy')->name('roomdelete');
查看文件 rooms-list.blade.php
@foreach($rooms as $room)
<tr>
<td>{!! $room->room_id !!}</td>
<td>{!! $room->hotel_id !!}</td>
<td>{!! $room->room_name !!}</td>
<td>
<a href="" class="button" data-id="{!! $room->room_id !!}"> <i class="fa fa-close text-danger"></i> </a></td>
</tr>
@endforeach
SweetAlert 以上Js代码
<script>
$(document).on('click', '.button', function (e) {
e.preventDefault();
var id = $(this).data('id');
swal({
title: "Are you sure!",
type: "error",
confirmButtonClass: "btn-danger",
confirmButtonText: "Yes!",
showCancelButton: true,
},
function() {
$.ajax({
type: "POST",
url: "{{url('room/delete')}}",
data: {id:id},
success: function (data) {
}
});
});
});
</script>
控制器文件 RoomList.php
public function destroy($id) {
$rooms = Room::find($id);
$rooms->delete();
return redirect()->back()->with('deleted', 'Delete Success!');
}
点击删除按钮不起作用
最好的问候
答案 0 :(得分:0)
首先,您有一个GET
路由,并且您在此处发送POST
请求,因此请先将您的ajax方法更改为GET
,如下所示:
<script>
$(document).on('click', '.button', function (e) {
e.preventDefault();
var id = $(this).data('id');
swal({
title: "Are you sure!",
type: "error",
confirmButtonClass: "btn-danger",
confirmButtonText: "Yes!",
showCancelButton: true,
},
function() {
$.ajax({
type: "GET",
url: "{{url('room/delete/')}}+id", // since your route has /{id}
data: {id:id},
success: function (data) {
}
});
});
});
</script>
我也不确定$(document).on('click', '.button', function (e)
我想它应该是这样的:
$('.button').on('click', '.button', function (e)
如果您还有任何问题,请告诉我。