Какой наилучший способ добавления вариантов в <select> из JavaScript объекта с использованием jQuery?
Ищу решение, которое не требует дополнительных плагинов, но было бы интересно узнать о существующих плагинах.
Вот что я попробовал:
options = { "1": "тест 1", "2": "тест 2" };
for (key in options) {
if (typeof (options[key]) === 'string') {
$('#mySelect').append('<option value="' + key + '">' + options[key] + '</option>');
}
}
Более чистое и простое решение:
$.each(options, function(key, value) {
$('#mySelect')
.append($('<option>', { value : key })
.text(value));
});
Основные изменения: убрал закрывающий тег option внутри append() и перенес свойства в объект как второй параметр append().