Jquery 在Datatable搜索中使用括号搜索值,但不给出结果

Jquery 在Datatable搜索中使用括号搜索值,但不给出结果,jquery,datatables,datatables-1.10,Jquery,Datatables,Datatables 1.10,我有以下代码,用于创建datatble并过滤值,但是当值包含括号时,搜索不会给出任何结果,尽管如果我选择全部查看,则可以查看值 我用了这两种方法 column.search(val ? '^' + val + '$' : '', true, false).draw(); 及 但它不能用括号搜索值 下面是完整的代码片段 initComplete: function () { this.api().columns([1,2,3,4,5,6]).ev

我有以下代码,用于创建datatble并过滤值,但是当值包含括号时,搜索不会给出任何结果,尽管如果我选择全部查看,则可以查看值

我用了这两种方法

column.search(val ? '^' + val + '$' : '', true, false).draw();

但它不能用括号搜索值

下面是完整的代码片段

initComplete: function () {
                         this.api().columns([1,2,3,4,5,6]).every(function () {
                         var column = this;
                         var select = $('<select style="width:130px; font-size: 13px;text-align-last: center; padding: 2px 1px 2px 1px; background: #fff; border: 1px solid #ccc; border-radius: 6px;position: relative; "><option value="">(All)</option></select>')
                        .appendTo($(column.footer()))
                          .appendTo( $(column.footer()).empty() )
                                 .on('change', function () {
                                     var val = $.fn.dataTable.util.escapeRegex(
                                         $(this).val()
                                     );
                                    alert("Asche::"+val);
                                     column
                                         .search(val ? '^' + val + '$' : '', true, false)
                                         .draw();
                                 });
                             column.data().unique().sort().each(function (d, j) {
                                 select.append('<option style="text-align-last: right;" value="' + d + '">' + d + '</option>')
                    } );
                } );
            }
initComplete:函数(){
this.api().列([1,2,3,4,5,6])。每个(函数(){
var列=此;
变量选择=$('(全部)')
.appendTo($(column.footer()))
.appendTo($(column.footer()).empty())
.on('change',function(){
var val=$.fn.dataTable.util.escapeRegex(
$(this.val()
);
警报(“Asche::”+val);
柱
.search(val?“^”+val+“$”:“”,true,false)
.draw();
});
column.data().unique().sort().each(函数(d,j){
选择。追加(“”+d+“”)
} );
} );
}

您尝试过对搜索值进行URL编码吗?没有,我没有尝试过。因此,对于这一点,不需要下面的var val=$.fn.dataTable.util.escapeRegex($(this.val());
initComplete: function () {
                         this.api().columns([1,2,3,4,5,6]).every(function () {
                         var column = this;
                         var select = $('<select style="width:130px; font-size: 13px;text-align-last: center; padding: 2px 1px 2px 1px; background: #fff; border: 1px solid #ccc; border-radius: 6px;position: relative; "><option value="">(All)</option></select>')
                        .appendTo($(column.footer()))
                          .appendTo( $(column.footer()).empty() )
                                 .on('change', function () {
                                     var val = $.fn.dataTable.util.escapeRegex(
                                         $(this).val()
                                     );
                                    alert("Asche::"+val);
                                     column
                                         .search(val ? '^' + val + '$' : '', true, false)
                                         .draw();
                                 });
                             column.data().unique().sort().each(function (d, j) {
                                 select.append('<option style="text-align-last: right;" value="' + d + '">' + d + '</option>')
                    } );
                } );
            }