powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / большой список в droplist
9 сообщений из 9, страница 1 из 1
большой список в droplist
    #39422779
denis_viktorovich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброго времени суток. Вот такой вопрос. На сайте юзеру надо выбрать из довольно большого справочника средство. Выбор идет по цифровому коду, причем сказать точно, какую часть кода они знают нельзя, т.е. условие выбора с Like.
Если я:
1. Просто показываю весь справочник отсортировав его для выбора (пара десятков тысяч записей), это неюзабельно для пользователя, т.к. стандартный автопоиск работает только по началу кода и набирать его надо быстро, т.е. если мы ищем 23456 и набрали 2345 а потом после некоей паузы вводим 6, то автопоиск оказывается сначала на строчке начинающейся с 2345, а потом с 6.
2. Использую автокомплит с запросом, вроде такой вариант самый верный, но селективность справочника очень маленькая. Даже если искать символов с 4, человек ввел 2345 и ему подгружается список из 5000 строк, при вводе нового символа - чуть меньше и т.д. Притормаживания при вводе (в том месте где список чистится и пере заполняется) сильно портят впечатление.

3. Сделал вот что. Обрабатываю keypress в dropdownlist, то, что вводят запоминаю в текстовое поле, при вводе Enter делаю выборку и заполнение списка, при нажатии ESC обнуляю введенное. Нормально работает, но сильно непривычно пользователю. Надо понимать, что надо выделить этот список, ввести свой кусок кода, нажать энтер и тогда он отфильтуется.

Вопрос, как это лучше делать с точки зрения правильного UI ? (я не вижу в интернете примеров чтобы списки для выбора были реально большими, как правило они как то по классификаторам бьются, что в моем случае невозможно).
...
Рейтинг: 0 / 0
большой список в droplist
    #39422791
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
denis_viktorovich2. Использую автокомплит с запросом, вроде такой вариант самый верный, но селективность справочника очень маленькая. Даже если искать символов с 4, человек ввел 2345 и ему подгружается список из 5000 строк, при вводе нового символа - чуть меньше и т.д. Притормаживания при вводе (в том месте где список чистится и пере заполняется) сильно портят впечатление.Можно попробовать этот способ + в запросе указать что-то вроде select top 200 ...
...
Рейтинг: 0 / 0
большой список в droplist
    #39422798
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
denis_viktorovich2. Использую автокомплит с запросом, вроде такой вариант самый верный, но селективность справочника очень маленькая. Даже если искать символов с 4, человек ввел 2345 и ему подгружается список из 5000 строк, при вводе нового символа - чуть меньше и т.д. Притормаживания при вводе (в том месте где список чистится и пере заполняется) сильно портят впечатление.

1. использовать полнотекстовый поиск
2. показывать первые 10-15 записей
3. показывать хинт сколько найдено вообще, чтобы не вводить в заблуждение пользователя
4. автокомплит, а не dropdown

у нас на миллионах записей такой автокомплит работает моментально. при чём пользователь может допустить ошибку в вводе, изменить порядок слов и это прокатит.
...
Рейтинг: 0 / 0
большой список в droplist
    #39422829
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
denis_viktorovich, а UI на чем написан? WinForms, WPF, ASP.NET?
...
Рейтинг: 0 / 0
большой список в droplist
    #39422854
denis_viktorovich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,
ASP.NET MVC 3
...
Рейтинг: 0 / 0
большой список в droplist
    #39422993
denis_viktorovich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
denis_viktorovichskyANA,
ASP.NET MVC 3
+bootstrap по мере необходимости прикручивается.
...
Рейтинг: 0 / 0
большой список в droplist
    #39423004
denis_viktorovich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[quot hVostt]
3. показывать хинт сколько найдено вообще, чтобы не вводить в заблуждение пользователя
[quot]

понятно, т.е. нашлось 200, показываю 10, если нужные юзеру в топ не попали, размещаю рядом с "@Html.DropDownList(" некую ссылку или кнопку "показать все" при нажатии которой, список заполняется уже без top 10.
Как вариант еще в список можно сунуть значение "Показать все", при выборе которого заполняем полностью, что наверное удобнее.
...
Рейтинг: 0 / 0
большой список в droplist
    #39423125
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
denis_viktorovichskyANA,
ASP.NET MVC 3
Хм, добавить кнопку типа кнопки "Найти" на ya.ru...
...
Рейтинг: 0 / 0
большой список в droplist
    #39426561
denis_viktorovich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо за советы, сделал некое гибридное решение.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / большой список в droplist
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]