gpt4 book ai didi

jquery - 如何更改 yajra dataTable 搜索过滤系统?

转载 作者:行者123 更新时间:2023-12-01 07:45:22 25 4
gpt4 key购买 nike

假设我在数据表搜索框“b”中写入,那么它通常会显示“abc”,“ybu”,“break”,“brain”等。但我只想得到“break”,“brain”(开始与b)。这意味着当我写一些单词时,它会显示以该单词开头的单词。我正在使用 yajra DataTables 1.10.10。

编辑

我解决了这个问题,但现在面临新的问题当我尝试使用两个数据表时,它停止显示一个数据表的主体数据,但另一个数据表正常工作

$.fn.dataTableExt.afnFiltering.push(
function(oSettings, aData, iDataIndex) {
var keywords = $(".dataTables_filter input").val().split(' ');
var matches = 0;
for (var k=0; k<keywords.length; k++) {
var keyword = keywords[k];
for (var col=0; col<aData.length; col++) {
if (aData[col].charAt(0).toLowerCase() == keyword.charAt(0).toLowerCase()) {
matches++;
break;
}
}
}
return matches == keywords.length;
}
);
$('.table2id').dataTable({
});
$('.table1id').dataTable({
});

终于解决了

var ptable = $('#table2').DataTable();
var rtable = $('#table1').DataTable();

var term;
$('#table1_filter input[type="search"]').keyup(function(e){
console.log("table1_filter");
var term = $(this).val();

regex = '^' + term ;
rtable.column( 0 ).search( regex, true, false ).draw();

});
$('#table2_filter input[type="search"]').keyup(function(e){

term = $(this).val();
regex = '^' + term ;
ptable.column( 0 ).search( regex, true, false ).draw();

});

最佳答案

您可以使用RegEx来做到这一点.
示例代码-

$('input[type="search"]').keyup(function(){
var term = $(this).val(),
regex = '^' + term ;
table.search( regex, true, false ).draw();
});

工作中JsFiddle 。但它只能适用于列。
例如-

table.column(0).search( regex, true, false ).draw();

这里我们仅将搜索正则表达式应用于第一列。

关于jquery - 如何更改 yajra dataTable 搜索过滤系统?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39119015/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com