繁体   English   中英

jQuery数据表过滤器

[英]Jquery DataTable Filter

我在网页中使用了Jquery数据表。 我也为网格使用了自定义过滤器。 以下是自定义过滤器的以下代码。

var oTable = $('#myDataTable').dataTable();

jQuery('#myDataTable_filter').find("input").keyup(function () {
    var Input = $(this).val();
    oTable.fnFilter('^' + Input, null, true, null);
    $('#myDataTable_filter').find("input").val(Input);
});

上面的代码适用于所有情况,但不适用于搜索(A * STAR)。 它没有选择正确的搜索结果。 任何人都可以帮助我解决问题。

您的解决方案不适用于A*STAR因为在此处进行过滤时:

oTable.fnFilter('^' + Input, null, true, null);

regex正在生成^A*STAR但是虽然*是元字符,但正确的regex应该用\\转义,因此regex应该是^A\\*STAR

您可以看到REGEX MetaCharacter


更新的代码已添加^元字符

var Input = $(this).val().replace(/([&\/\\#,\^+()$~%.'":*?<>{}])/g,"\\$1");//this is will add prefix \ to meta character
oTable.fnFilter('^' + Input, null, true, null);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM