Конечно - сделайте options
массивом строк и используйте .join('')
вместо +=
каждый раз в цикле. Небольшое снижение производительности при работе с большим количеством опций ...
var options = [];
$.getJSON("/Admin/GetFolderList/", function(result) {
for (var i = 0; i < result.length; i++) {
options.push('<option value="',
result[i].ImageFolderID, '">',
result[i].Name, '</option>');
}
$("#theSelect").html(options.join(''));
});
Да. Я все еще работаю со строками все время. Верьте или нет, это самый быстрый способ создания фрагмента DOM ... Теперь, если у вас есть только несколько вариантов, это не будет иметь большого значения - используйте технику Dreas демонстрирует , если вам нравится стиль , Но имейте в виду, что вы вызываете внутренний анализатор HTML браузера i*2
раз, а не один раз, и модифицируете DOM каждый раз в цикле ... с достаточным количеством опций. в конечном итоге вы заплатите за это, особенно в старых браузерах.
Примечание: Как указывает справедливость, это развалится, если ImageFolderID
и Name
не не закодированы должным образом ...