我在网页上有2个数据表,并且使用单个选择器进行实例化:
var myTable = $('.dataTable').DataTable();
我想在这两个表上同时使用“搜索”功能获得相同的值。
问题是这样做只会对第二个表进行搜索操作。
jsfiddle:https://jsfiddle.net/a2afkn4a/
DataTables文档似乎非常清楚,表示可以使用单个选择器初始化和操作多个表:https://datatables.net/examples/basic_init/multiple_tables.html
如何将此搜索应用于具有一个选择器的两个表?
注意:我知道我可以“轻松”分离表并独立操作它们。问题是表创建是在许多其他网页使用的库中完成的,因此制作2个具有不同ID的独立表将需要做大量工作以确保它仍然可以使用库在所有页面上工作。
任何意见都会受到赞赏。
答案 0 :(得分:1)
你是对的,DT docs确实非常清楚......
表独立于用户控件(即一个表上的用户控制的分页不影响其他表),但它们确实共享给定的初始化参数(例如,如果您特定西班牙语文件,所有表格将以西班牙语显示。
jQuery对象表示一组元素,DT对象不表示。您可以同时启动它们,但这并不意味着DT对象将容纳多个表。
您需要单独进行。
var opts = {
"sPaginationType": "full_numbers",
data: dataSet,
columns: columnDefs,
};
$('.dataTable').each(function(){
$(this).DataTable(opts).column(0).search('Airi').draw();
});
这里有更新的fiddle。