В моем администраторском разделе, когда я редактирую объекты, я должен присоединить каждый объект к родительскому элементу. У меня есть список более чем 24 000 родительских элементов, которые перечислены в алфавитном порядке в выпадающем списке (список музыкальных художников).
Страница редактирования, которая перечисляет все эти объекты в выпадающем меню, составляет 2 МБ, и она отстает как сумасшедший для людей со старыми машинами, особенно в Internet Explorer.
Что польза альтернативна для тиражирования той же функции, где я должен был бы выбрать 1 из этих 24 000 художников, на самом деле не имея их всех предварительно загруженных в выпадающее меню.
Вместо того, чтобы заполнять выпадающий список таким количеством имен, вы могли бы:
Конечно, многое из этого зависит от стека, который вы реализуете, например вы используете AJAX или jQuery, доступ к db / type.
Предполагая, что человек знает, что он ищет, вы можете создать простую функцию автоматического предложения. Checkout http://code.drewwilson.com/entry/autosuggest-jquery-plugin.
Используйте jquery (или подобные ему), которые имеют множество выпадающих элементов автозаполнения. Например:
Предполагая, что пользователи имеют некоторое представление о том, кого / что они ищут (в данном случае художника), я думаю, что текстовое поле с автозаполнением было бы лучше всего. Такой подход устранит ваши проблемы с начальной загрузкой и обеспечит чистую реализацию AJAX-y, которую в наши дни предпочитают пользователи. В качестве альтернативы, поскольку вы имеете дело с именами исполнителей, вы можете включить элемент управления «алфавит», который позволяет пользователю сокращать список исполнителей по первому начальному значению (первому и / или последнему). Я видел, как это делается довольно эффективно с гиперссылкой для каждой буквы. Тот же подход можно реализовать с раскрывающимся списком, который включает все буквы алфавита, динамически загружает раскрывающийся список отфильтрованных исполнителей на основе выбора.