jQuery sFilter – plugin за филтриране на <select> елементи

от Стоян Кьосев

Изтегли:
sFilter
Версия:
0.2
Обновено на:
13.04.2008
Демо:
виж
Списък с промени:
changelog.txt

На два пъти ми се наложи да вграждам функционалност за филтриране на html select list, затова реших да си поиграя и да го изнеса като плъгин.

Идеята – имаме падащо поле (най-често multiple) с много стойности и искаме да ги филтрираме по някаква ключова дума.

Реализацията – трябва ви jQuery и sFilter.

В html кода, освен полето <select id="my_select">, ще трябва и <input type="text" id="my_select-replace">, където ще се въвежда ключовата дума. След това просто извиквате:

$(document).ready(function() {
  $("#my_select").sFilter();
});

Като цяло може да се усъвършенства алгоритъма за търсене. Също така има възможност да се добавят и някои интересни неща като опции, така че очакваите още версии скоро.

В момента филтърът има следното поведение – ако се въведе една буква, се филтрират всички стойности по първа буква, съвпадаща с въведената. Ако се въведат две или повече – всички стойности се претърсват и се филтрират тези, който съдържат въведената фраза.
Планирам да изнеса това поведение в опции, за да може да се ползва според нуждите на всеки.

*** Обновление 13.04.2008 *** – добавени са следните опции:

  • - delay (integer): забавяне в милисекунди преди да се приложи въведения филтър. Стойност по подразбиране – 200.
  • - keepSelected (boolean): Флаг дали да запазва избраните стройности между отделните филтър заявки. Стойност по подразбиране – true.

2 Коментара

  • 1

    Това с проверката за първата буква когато е написана само една не ми се стори много удачно, но то пък според целите… иначе като няма резулати все пак могат да се визуализират всичките.

    каза Иван Андонов на 22.04.2008

  • 2

    Да, мисля да изнеса определени behaviours в options, защото наистина има някои спефицични неща в момента, които са били лично за нуждите ми.
    Иначе не виждам смисъл ако няма намерен резултат да се показват всичките опции, все пак като търсиш нещо в дадена търсачка, ако няма резултати ти изписва, че няма резултати, а не ти изкарва всичко в базата на търсачката.

    каза Стоян Кьосев на 22.04.2008

Нямате право да публикувате коментари в момента.