Tentu - membuat options
array string dan gunakan .join('')
daripada +=
setiap kali melalui loop. Lonjakan performa sedikit ketika berhadapan dengan sejumlah besar opsi ...
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(''));
});
Iya. Saya masih bekerja dengan string sepanjang waktu. Percaya atau tidak, itu adalah cara tercepat untuk membangun sebuah fragmen DOM ... Sekarang, jika Anda hanya memiliki beberapa pilihan, itu tidak akan menjadi masalah - gunakan teknik yang ditunjukkan Dreas jika Anda suka gaya tersebut. Namun perlu diingat, Anda menggunakan waktu parser HTML internal browser i*2
, bukan hanya sekali, dan memodifikasi DOM setiap kali melalui loop ... dengan sejumlah opsi yang cukup. Anda akhirnya akan membayar untuk itu, terutama di browser lama.
Catatan: Seperti yang ditunjukkan keadilan, ini akan berantakan jika ImageFolderID
dan Name
tidak dikodekan dengan benar ...
<option/>
elemen daripada membuat masing-masing?