#javascript #jquery #datatables
#javascript #jquery #таблицы данных
Вопрос:
Я работаю с библиотекой данных, и у меня есть проблемы, у меня есть система фильтрации, и в случае, если у <td>
меня есть какой-то html-код, например: <a hreff="#">TD name</a>
у меня будет в столбце какая-то часть из html:
В JSFiddle, если вы выберете Код станции> Создать фильтр, вы увидите HTML-код в результате фильтрации.
Пример кода вы можете увидеть здесь.
Как мне нужно удалить html-код из результата подгонки, как я могу это сделать?
Ответ №1:
замените html-тег в td и нарисуйте его.
render: function ( data, type, row, meta ) {
return data.replace(/<(/)?([a-zA-Z]*)(s[a-zA-Z]*=[^>]*)?(s)*(/)?>/g, '');
}
Добавьте свою функцию addSpliting
function addSpliting(val) {
if(val != '') {
$("#test1").DataTable({
destroy: true,
searchPanes: {
layout: 'columns-4',
},
columnDefs: [{
searchPanes: {
show: true,
},
targets: '_all',
render: function ( data, type, row, meta ) {
return data.replace(/<(/)?([a-zA-Z]*)(s[a-zA-Z]*=[^>]*)?(s)*(/)?>/g, '');
}
}],
dom: 'Pfrtip'
});
$('.dtsp-searchPanes').children().each(function(i, obj){
if(!val.includes(i)) $(this).hide();
else $(this).show();
});