Как изменить порядок <options> в алфавитном порядке в раскрывающемся списке jquery
У меня есть раскрывающийся список, который отлично подходит для того, что мне нужно. Единственная проблема, с которой я столкнулся, - это все, что я не могу предоставить отсортированный список для выпадающего списка, но вам нужно заказать его в алфавитном порядке на стороне клиента. Кажется, я не могу найти что-либо, связанное с перестановкой тегов по их значению в алфавитном порядке в выбранном плагине. Любопытно, если кто-то должен был это сделать или может указать мне в правильном направлении. пример кода:
$("#my-dropdown").chosen({no_results_text: "No results matched"});
просто интересно, есть ли у них возможность организовать его, прежде чем я сам его закажу в javascript. заранее спасибо
Ответы
Ответ 1
Сначала нужно отсортировать список... Затем запустите выбранный плагин.
// sort list
var my_options = $("#my-dropdown option");
my_options.sort(function(a,b) {
if (a.text > b.text) return 1;
else if (a.text < b.text) return -1;
else return 0
})
$("#my-dropdown").empty().append(my_options);
// run chosen plugin
$("#my-dropdown").chosen({no_results_text: "No results matched"});
Код сортировки списков, полученный из высоко оцененного ответа здесь:
Каков наиболее эффективный способ сортировки параметров выбора HTML по значению при сохранении выбранного в данный момент элемента?
Ответ 2
Глядя на API, я тоже не вижу возможности сортировки. Однако здесь могут быть полезны две ссылки: