我建立了一个简单的数据表,其中包含员工姓名和所属部门。
工作正常,但现在我意识到搜索对具有特殊字符的字符串进行了不同的过滤。
例如,有4名名为Joao的员工,其中两名注册为João,另两名为Joao,而没有ã。
如何通过键入“ joao”忽略这四个区别?
我找到了一个DataTable插件网站,但是我无法使其运行,我不知道将其放置在何处:
https://datatables.net/plug-ins/filtering/type-based/accent-neutralise
这是DataTable的构造:
$('#dataTable').DataTable({
language:{
"sEmptyTable": "Nenhum registro encontrado",
"sInfo": "Mostrando de _START_ até _END_ de _TOTAL_ registros",
"sInfoEmpty": "Mostrando 0 até 0 de 0 registros",
"sInfoFiltered": "(Filtrados de _MAX_ registros)",
"sInfoPostFix": "",
"sInfoThousands": ".",
"sLengthMenu": "_MENU_ resultados por página",
"sLoadingRecords": "Carregando...",
"sProcessing": "Processando...",
"sZeroRecords": "Nenhum registro encontrado",
"sSearch": "Pesquisar",
"oPaginate": {
"sNext": "Próximo",
"sPrevious": "Anterior",
"sFirst": "Primeiro",
"sLast": "Último"
},
"oAria": {
"sSortAscending": ": Ordenar colunas de forma ascendente",
"sSortDescending": ": Ordenar colunas de forma descendente"
},
dom:"iptrt",
}
});
$('.dataTables_filter').addClass('pull-left');
$('.dataTables_filter input').addClass('filter-input');
$('.dataTables_length').addClass('pull-right');
答案 0 :(得分:1)
您可以使用重音符号(变音符号)对列中的数据进行规范化,也可以向表中添加隐藏列,这是通过使用变音符对现有列中的字符串进行规范化来计算的
const ds = "João";
ds.normalize('NFD').replace(/[\u0300-\u036f]/g, ""); // "Joao"