Как удалить html-часть из фильтрации jQuery с данными

#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();

});
 

введите описание изображения здесь