gpt4 book ai didi

laravel - Laravel 5.7.9 中 Yajra 数据表中的删除按钮

转载 作者:行者123 更新时间:2023-12-03 23:53:49 26 4
gpt4 key购买 nike

你好,我有这个操作的 MemberController:

public function anyData()
{
$members = DB::table('members')
->select(['id','email','firstname','lastname','address','zip','city','phone','mobile','work','birthdate']);


return Datatables::of($members)
->addColumn('action', function ($id) {
return '<a href="member/' . $id->id . '/edit" class="btn btn-primary">Edit</a>
<button class="btn" data-remote="/member/' . $id->id . '">Delete</button>
'; })->make(true);
}

这是获取包含数据的表格的 JS 代码:
<script type="text/javascript">

var table = $('#datatable-member').DataTable({
responsive: true,
"language": {
"url": "{{ asset('/plugins/datatables/lang').'/'.Config::get('app.locale').'.json'}}"
},
processing: true,
serverSide: true,
ajax: '{{ route('member') }}',
columns: [
{
"className": 'details-control',
"orderable": false,
"data": null,
"defaultContent": ''
},
{ data: 'id', name: 'id' },
{ data: 'email', name: 'email' },
{ data: 'firstname', name: 'firstname' },
{ data: 'lastname', name: 'lastname' },
{ data: 'address', name: 'address' },
{ data: 'zip', name: 'zip' },
{ data: 'city', name: 'city' },
{ data: 'phone', name: 'phone' },
{ data: 'mobile', name: 'mobile' },
{ data: 'work', name: 'work' },
{ data: 'birthdate', name: 'birthdate' },
{data: 'action', name: 'action', orderable: false, searchable: false}
],
order: [[1, 'asc']]
}).$('.btn[data-remote]').on('click', function (e) {alert('test') })
;

</script>

表格正确显示数据,编辑链接和删除按钮正确显示,但删除按钮中的操作(目前只有警报)不起作用,当我单击时没有任何 react 。

我也在 javascript 上尝试过这个,但没有任何改变:
$('#datatable-member').DataTable().on('click', '.btn-delete[data-remote]', function (e) {alert('test') })

最佳答案

从用于删除的 Laravel 框架中,您需要使用 X-CSRF token 进行表单验证。如果您正在使用 Laravel 资源,请尝试发送正确的删除请求,您可以使用以下代码,但请确保您的数据表编辑列正在使用 btn-delete类,因为您现在正在使用 btn类(class)。

<script type="text/javascript">

var table = $('#datatable-member').DataTable({
responsive: true,
"language": {
"url": "{{ asset('/plugins/datatables/lang').'/'.Config::get('app.locale').'.json'}}"
},
processing: true,
serverSide: true,
ajax: '{{ route('member') }}',
columns: [
{
"className": 'details-control',
"orderable": false,
"data": null,
"defaultContent": ''
},
{ data: 'id', name: 'id' },
{ data: 'email', name: 'email' },
{ data: 'firstname', name: 'firstname' },
{ data: 'lastname', name: 'lastname' },
{ data: 'address', name: 'address' },
{ data: 'zip', name: 'zip' },
{ data: 'city', name: 'city' },
{ data: 'phone', name: 'phone' },
{ data: 'mobile', name: 'mobile' },
{ data: 'work', name: 'work' },
{ data: 'birthdate', name: 'birthdate' },
{data: 'action', name: 'action', orderable: false, searchable: false}
],
order: [[1, 'asc']]
});

$('#datatable-member').on('click', '.btn-delete[data-remote]', function (e) {
e.preventDefault();
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
var url = $(this).data('remote');
// confirm then
$.ajax({
url: url,
type: 'DELETE',
dataType: 'json',
data: {method: '_DELETE', submit: true}
}).always(function (data) {
$('#datatable-member').DataTable().draw(false);
});
});

关于laravel - Laravel 5.7.9 中 Yajra 数据表中的删除按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52984544/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com