我有一个DataTable (1.10.0)在CodeIgniter的帮助下运行。数据由ajax和Datatables库提供。一切都很顺利。
我希望在页面的某个位置插入一个输入字段,以便只筛选/搜索一列。我试过:
$('#customer').on( 'keyup click', function () {
$('#results').DataTable().search(
$('#customer').val()
).draw();
} );
这将在所有列中搜索,并更改DataTables自身搜索字段中的值。如果我添加列(),它将不再在表中搜索,尽管它再次绘制所有ajax数据而不使用过滤器/搜索。
$('#customer').on( 'keyup click', function () {
$('#results').DataTable().column(0).search(
$('#customer').val()
).draw();
} );
我的问题是:在服务器端处理的数据上实现外部列搜索/筛选的正确方法是什么?
谢谢!
发布于 2016-01-05 12:16:53
您正确地使用了column().search()
API函数。
但是,对于服务器端处理,单独的列搜索是以单独的请求参数发送的,请参阅服务器端处理。
例如,如果使用值John Doe
搜索第一列,则服务器端脚本将接收参数columns[0][search][value]
设置为John Doe
的请求,而全局搜索参数search[value]
将为空。
您需要在服务器端单独处理这个单独的列搜索,无论是手动的还是在库的帮助下。
https://stackoverflow.com/questions/34586138
复制相似问题