DataTables 的外部列搜索
External column search for DataTables
在 CodeIgniter 的帮助下,我有一个 DataTable (1.10.0) 运行。数据由 ajax 和 Datatables 库提供。一切都很好运行。
我想在我页面的某处插入一个输入字段到 filter/search 只有一列。我试过:
$('#customer').on( 'keyup click', function () {
$('#results').DataTable().search(
$('#customer').val()
).draw();
} );
这将搜索所有列,并更改 DataTables 自己的搜索字段中的值。如果我添加 column(),它将不再在 table 中搜索,尽管它会在没有 filter/search.
的情况下再次绘制所有 ajax 数据
$('#customer').on( 'keyup click', function () {
$('#results').DataTable().column(0).search(
$('#customer').val()
).draw();
} );
我的问题:在服务器端处理的数据上实施外部列 search/filter 的正确方法是什么?
谢谢!
您正在正确使用 column().search()
API 功能。
但是在 server-side 处理中,各个列搜索在单独的请求参数中发送,请参阅 Server-side processing。
例如,如果您使用值 John Doe
搜索第一列,您的服务器端脚本将收到参数 columns[0][search][value]
设置为 John Doe
的请求,而全局搜索参数 search[value]
将是空的。
您需要在 server-side 上单独处理这些单独的列搜索,无论是手动还是在图书馆的帮助下。
在 CodeIgniter 的帮助下,我有一个 DataTable (1.10.0) 运行。数据由 ajax 和 Datatables 库提供。一切都很好运行。
我想在我页面的某处插入一个输入字段到 filter/search 只有一列。我试过:
$('#customer').on( 'keyup click', function () {
$('#results').DataTable().search(
$('#customer').val()
).draw();
} );
这将搜索所有列,并更改 DataTables 自己的搜索字段中的值。如果我添加 column(),它将不再在 table 中搜索,尽管它会在没有 filter/search.
的情况下再次绘制所有 ajax 数据$('#customer').on( 'keyup click', function () {
$('#results').DataTable().column(0).search(
$('#customer').val()
).draw();
} );
我的问题:在服务器端处理的数据上实施外部列 search/filter 的正确方法是什么?
谢谢!
您正在正确使用 column().search()
API 功能。
但是在 server-side 处理中,各个列搜索在单独的请求参数中发送,请参阅 Server-side processing。
例如,如果您使用值 John Doe
搜索第一列,您的服务器端脚本将收到参数 columns[0][search][value]
设置为 John Doe
的请求,而全局搜索参数 search[value]
将是空的。
您需要在 server-side 上单独处理这些单独的列搜索,无论是手动还是在图书馆的帮助下。