Jquery javascript: есть список фильтрации (работает), нужна помощь, чтобы все LI были видны, когда совпадений нет

#javascript #jquery #regex #filter #match

#javascript #jquery #регулярное выражение #Фильтр #совпадение

Вопрос:

http://jsfiddle.net/nicktheandroid/ape5U/34/

Введите hol в текстовое поле в примере со скрипкой. вы увидите, что все LI имеют класс hidden , что делает их скрытыми. теперь, если вы преобразуете то, что у вас было в текстовом поле, в word holy , вы увидите, что у вас внезапно появилось 3 совпадения.

Мне нужно, чтобы он показывал все LI (категории), если совпадений нет, вместо того, чтобы скрывать их все, я пытался разобраться в этом часами и не могу, когда я меняю одну вещь, это нарушает другую. grr.

Ответ №1:

Добавьте условие в конце вашего if (length > 2) оператора, чтобы у вас было:

 if (length > 2) {   
   ...
   if(count == 0) $('.filtered li').removeClass("hidden"); //Add this line!
}else{
  ...
}
...
  

Я протестировал и работает нормально. Надеюсь, это поможет. Приветствия

Комментарии:

1. Желательно с фигурными скобками, не выношу этот стиль без фигурных скобок if!