问题描述
我正在尝试使用jquery过滤引导数据表。
我已经完成了。
但是问题是当我选择“ Male它也会给female带来结果。
jQuery并没有捕获到称为Male的确切单词。
这是我的jQuery代码和结果
$(document).ready(function() {
var table = $('#example1').DataTable();
$('#gender').on('change', function () {
table.columns(1).search( this.value ).draw();
});
});
这是我选择“ Female时的看法。
这是我的看法,当我选择Male
因此,当我选择男性时,如何只获得男性结果。
1楼
Icepickle
0
已采纳
2019-02-25 10:52:19
好了,您可以使用功能的第二个参数来表明您的查询是正则表达式。 然后,您还必须指示您不想使用智能搜索功能,这是第三个参数
const regExSearch = '^' + this.value + '$';
table.columns(1).search(regExSearch, true, false).draw();
这将包括输入前后的空格,因此您可能不需要这些空格。
我提供的示例代码实际上只是文档中找到的代码
2楼
Code_Mode
0
2019-02-25 11:22:06
男性/女性这两个性别值在单词中都有“男性”,因此在两种情况下都进行搜索。
您可以使用'\\\\b'+'this.value'+'\\\\b'正则表达式来精确单词。
查看有关/b 。
$('#gender').on('change', function () {
table.columns(1).search( '\\b'+'this.value'+'\\b' ).draw();
});
希望能帮助到你。