@rustikjan

Как реализовать Js фильтр данных в html таблице в алфавитном диапазоне?

Добрый день!
Суть вопроса такова, есть таблица с данными, нужно реализовать фильтрацию данных в алфавитном диапазоне. Вот есть пример таблицы jsfiddle.net/p2R6F, в ней можно задать диапазон дат для фильтрации. А как при вводе диапазона букв алфавита, например (В-И) отфильтровать все данные столбца, которые начинаются на первые буквы этого диапазона? Т.е. при вводе В-И в примере jsfiddle.net/p2R6F по столбцу "автор" должны оставаться Василий и Иван. Если есть авторы, имена которых начинаются на буквы в промежутке В-И тоже остаются в таблице. Может кто делал такое? Поделитесь, пожалуйста, опытом.
  • Вопрос задан
  • 535 просмотров
Решения вопроса 1
sergiks
@sergiks Куратор тега JavaScript
♬♬
Можно строго проверять ввод на соответствие паттерну X-Y и буквально использовать его для конструирования регулярного выражения [X-Y] для сравнения с первыми буквами авторов.

Ну и все показать, и спрятать те, что не совпадают через jQuery.filter():
if( /^[А-Яа-я]-[А-Яа-я]$/.test(value)) {
      var RE = new RegExp('[' + value + ']');
      $('table.table-class tr').show(); // all on
      $('table.table-class tr').filter( function(){
        var firstChar = $('td.author', this).text().substr(0,1);
        return !RE.test( firstChar);
      }).hide();


фиддл

P.S. и переписал адскую функцию для тестов.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
24 нояб. 2024, в 21:55
200000 руб./за проект
24 нояб. 2024, в 21:41
1000 руб./за проект
24 нояб. 2024, в 21:19
35000 руб./за проект