Лучшее решение для выпадающего списка с более чем 300 строк? - PullRequest
3 голосов
/ 20 декабря 2011

У меня есть эта проблема, в форме у меня есть список клиентов, которых может быть больше 300, и для меня это не очень просто найти там, потому что я должен прокрутить все результаты, чтобы найти одну строку!

На старой технологии у меня была кнопка, которая открывала всплывающее окно, где я должен выяснить, какого клиента выбрать, а затем я использовал javascript для записи выбора в первой форме, но это может быть хорошим решением с новой технологией. !

Как я могу разрешить это сомнение? Какое лучшее решение для большой <select> метки?

Ответы [ 3 ]

3 голосов
/ 20 декабря 2011

Вы в основном хотите выпадающий список автозаполнения.Этого не существует в стандартном наборе компонентов JSF, и это также не совсем тривиально реализовать с помощью JavaScript / jQuery поверх стандартного набора компонентов JSF, поскольку доступные значения должны присутствовать в состоянии на стороне сервера.Вы также в основном хотите раскрывающийся список, который представлен <div><input><ul><li> вместо <select><option>, потому что обычный <select> не позволяет конечному пользователю вводить текст. Стандартный набор компонентов JSF не имеет компонента, который отображаетжелаемая разметка HTML.В основном вам нужно создать пользовательский компонент JSF.

Существуют сторонние библиотеки компонентов JSF, которые уже предлагают полноценный выпадающий список автозаполнения JSF.Было бы проще использовать любой из них, а не изобретать колесо с помощью пользовательского компонента JSF.Выберите:

3 голосов
/ 20 декабря 2011

вы можете попробовать jquery ajax autocomplete

См .:

http://docs.jquery.com/Plugins/Autocomplete

http://jqueryui.com/demos/autocomplete/

1 голос
/ 20 декабря 2011

Да, плагин автозаполнения jQuery - лучшее решение для вас, когда у вас есть большое количество элементов.

Кстати, представьте, что вы хотите выбрать пункт с определенными буквами. Пока вы используете выпадающие списки, вы можете указывать нужные элементы, вводя их имена из первой буквы каждого. Но, используя автозаполнение jQuery, вы можете искать строку или группу букв везде. не имеет значения, находятся ли ваши вставленные буквы в первых именах ваших предметов или в других местах.

Как сказал ShantanuD, вы можете найти этот плагин в http://jqueryui.com/demos/autocomplete/

...