我使用DataTables jQuery库作为项目中的表格。
要自定义过滤,我已在每行的第一列添加了带过滤字的span标记。例如:
<span style="display:none;" id="spanFilter' + i + '">filterWord</span>
然后我用select来过滤这些单词。
$("#filterSelect").on('change', function () {
oTable.fnFilter($("#filterSelect option:selected").val(), 0);
});
这很好用。
我还有代码来更改#spanFilter
。
$("#spanFilter" + i).text(spanFilterValue);
使用jQuery更改filterWord后,fnFilter
无效。
我做错了什么?
答案 0 :(得分:0)
通过查看您的代码,我相信您正在使用dataTables legacy version。如果您刚开始使用dataTables,我强烈建议您使用最新版本。
无论如何要反映在dataTables中,我强烈建议你使用dataTables api来改变表的内容,而不是使用jQuery。
注意:以下示例适用于DataTables v1.9
$(document).ready( function () {
var oTable = $('#table').dataTable();
// get an array of the TR nodes that are used in table's body
var nNodes = oTable.fnGetNodes();
// iterating over each TR or row
nNodes.forEach(function(node,index) {
// update first column of every node
oTable.fnUpdate(spanFilterValue,node,0);
});
});
API参考