Javascript 带有columnFilter.js的datatable出现问题
在列筛选或分页之后,我对数据库服务器端有问题。首先,在重新加载页面后-一切正常,数据得到正确。但之后我排序或过滤列,请求url返回错误 以下是我的jquery:Javascript 带有columnFilter.js的datatable出现问题,javascript,jquery,laravel,datatable,datatables,Javascript,Jquery,Laravel,Datatable,Datatables,在列筛选或分页之后,我对数据库服务器端有问题。首先,在重新加载页面后-一切正常,数据得到正确。但之后我排序或过滤列,请求url返回错误 以下是我的jquery: var customer_id = $('input[name=customer-id]').val(); // Data tables $('#customers-list-data').DataTable({ processing: true, serverSide: true, ajax: '/custo
var customer_id = $('input[name=customer-id]').val();
// Data tables
$('#customers-list-data').DataTable({
processing: true,
serverSide: true,
ajax: '/customers/edit/'+customer_id,
columns: [
{ data: 'first_name', name: 'first_name' },
{ data: 'last_name', name: 'last_name' },
{ data: 'phone', name: 'phone' },
{ data: 'country', name: 'country' },
{ data: 'city', name: 'city' },
{ data: 'address', name: 'address' },
{ data: 'email', name: 'email' },
{ data: 'action', name: 'action', orderable: false, searchable: false}
],
pagingType: 'full_numbers',
dom: '<"dt-top-row"Bfl>r<"dt-wrapper"t><"dt-row dt-bottom-row"<"row"<"col-sm-6"i><"col-sm-6 text-right"p>>>',
buttons: [
{
extend: 'collection',
text: 'Save <span class="caret" />',
buttons : ['csvFlash', 'excelFlash', 'pdfFlash']
},
'colvis'
]
});
$('#customers-list-data').dataTable().columnFilter({
sPlaceHolder: "head:after",
aoColumns: [
{ type: "text" },
{ type: "text" },
{ type: "text" },
{ type: "text" },
{ type: "text" },
{ type: "text" },
{ type: "text" },
null
]
});
过滤或排序后,分页:
http://address.com/customers/edit/39?draw=2&columns=%5Bobject+Object%5D%2C%5Bobject+Object%5D%2C%5Bobject+Object%5D%2C%5Bobject+Object%5D%2C%5Bobject+Object%5D%2C%5Bobject+Object%5D%2C%5Bobject+Object%5D%2C%5Bobject+Object%5D&order=%5Bobject+Object%5D&start=10&length=10&search=%5Bobject+Object%5D&sRangeSeparator=~
Laravel调试错误:
in Request.php line 78
at HandleExceptions->handleError('2', 'Illegal string offset 'column'', '/var/www/dev/vendor/yajra/laravel-datatables-oracle/src/yajra/Datatables/Request.php', '78', array('orderable' => array(), 'i' => '0', 'c' => '1')) in Request.php line 78
这是我的桌子:
名字
姓
电话
国
城市
住址
电子邮件
名字
姓
电话
国
城市
住址
电子邮件
行动
不确定columnFilter.js的情况,但您可以使用服务器端设置和yadcfIn进行筛选排序后,URL的请求参数有很多:object+object
。这说明您没有将正确的值放入填充参数的变量中。你看过了吗?是的,我看到了,但是为什么在过滤列之后变量是不正确的呢?可能是错误,因为AD中有两行?
http://address.com/customers/edit/39?draw=2&columns=%5Bobject+Object%5D%2C%5Bobject+Object%5D%2C%5Bobject+Object%5D%2C%5Bobject+Object%5D%2C%5Bobject+Object%5D%2C%5Bobject+Object%5D%2C%5Bobject+Object%5D%2C%5Bobject+Object%5D&order=%5Bobject+Object%5D&start=10&length=10&search=%5Bobject+Object%5D&sRangeSeparator=~
in Request.php line 78
at HandleExceptions->handleError('2', 'Illegal string offset 'column'', '/var/www/dev/vendor/yajra/laravel-datatables-oracle/src/yajra/Datatables/Request.php', '78', array('orderable' => array(), 'i' => '0', 'c' => '1')) in Request.php line 78