我遇到了Datatable()。search()函数的问题。 我希望得到的是,当我输入以" x:"开头的东西时然后我想过滤索引为1的列,在其他情况下,它应该过滤列0。
我还没有发现任何与我类似的问题。也许DataTable()无法进行这样的操作?
谢谢你的时间!
这是我的js代码:
function filterName() {
var regularExpression = $('.column_filter').val();
var columnNum = 0;
if (regularExpression[0] == 'x' && regularExpression[1] == ':') {
columnNum = 1;
regularExpression = regularExpression.substring(3, regularExpression);
} else {
columnNum = 0;
}
if (regularExpression[regularExpression.length - 1] == ' ') {
regularExpression = regularExpression.substring(0, regularExpression.length - 1);
}
regularExpression = regularExpression.replace(/\s/g, "|");
$('#table')
.DataTable()
.column(columnNum)
.search(
regularExpression,
true,
false
)
.draw();
}
$('#table')
.DataTable({
"paging": false,
"ordering": false,
"info": false,
"autoWidth": false,
"sDom": '<"top"i>rtlp'
});
$('.column_filter')
.on('keyup click',
function () {
filterName();
});
答案 0 :(得分:0)
好的,我找到了解决方案。 我必须清除搜索功能。
我补充说:
$('#table')
.DataTable()
.columns()
.search('');
之前:
$('#table')
.DataTable()
.column(columnNum)
.search(
regularExpression,
true,
false
)
.draw();