Я использую Select2 builtin AJAX для загрузки крошечного списка элементов. Select2 загружает весь список при первом выборе (хорошо), но перезагружает канал JSON каждый раз, когда пользователь пытается изменить свой выбор или тип, чтобы фильтровать элементы (а это означает, что новый запрос AJAX для каждой введенной буквы!).Сделать выбор2 выборки данных только один раз
В A request is being triggered on every key stroke, can I delay this? мы можем прочитать:
По умолчанию Выбор2 запустит новый запрос AJAX, когда пользователь изменяет свой слово для поиска. Вы можете установить лимит времени для отладки запросов с использованием опции
ajax.delay
.$('select').select2({ ajax: { url: '/example/api', delay: 250 } });
Это приведет к тому, что Select2 будет ждать 250 миллисекунд перед отправкой запроса в ваш API.
... но это не так. Шутки в сторону. Я также пробовал недокументированное свойство minimumInputLength
, показанное на примерах, но, похоже, ничего не делает.
Возможно ли даже сделать выборки Select2 только один раз?
Я полагаю, что библиотека просто не предназначена для работы именно так. –