【发布时间】:2018-07-26 11:43:03
【问题描述】:
我正在尝试更改 DataTables 搜索的默认行为,但没有成功。
我正在使用带有 datatables.mark.js plugin - Github 的插件 mark.js(我目前使用的是 DataTables 1.10.12)。
我只想突出显示带有结果的行,而不是删除所有不匹配的行。
我注意到在函数 _fnDraw 内部,它获取包含匹配项的数组。
所以我试着像这样改变那部分:
function _fnDraw( oSettings )
{
/* I just changed the following lines */
// var aiDisplay = oSettings.aiDisplay;
var aiDisplay = oSettings.aiDisplayMaster;
我还注意到 fnDisplayEnd 函数用于对需要打印的行设置限制。
"fnDisplayEnd": function ()
{
var
/* I just changed the following lines */
//records = this.aiDisplay.length,
records = this.aiDisplayMaster.length,
但是这样做,代码会在另一点中断:
_api_register( 'rows().nodes()', function () {
return this.iterator( 'row', function ( settings, row ) {
return settings.aoData[ row ].nTr || undefined;
}, 1 );
} );
出现以下错误: 未捕获的类型错误:无法读取未定义的属性“nTr”
其中 row 包含从搜索中获得的匹配项
我错过了一些东西,但我不知道在哪里。
【问题讨论】:
标签: javascript jquery datatables