ループを使用for
して配列を反復処理します。文字列ごとに、新しいoption
要素を作成し、文字列をそのinnerHTML
andとして割り当てvalue
てから、要素に追加しますselect
。
var cuisines = ["Chinese","Indian"];
var sel = document.getElementById('CuisineList');
for(var i = 0; i < cuisines.length; i++) {
var opt = document.createElement('option');
opt.innerHTML = cuisines[i];
opt.value = cuisines[i];
sel.appendChild(opt);
}
デモ
更新:createDocumentFragment
と の使用forEach
ドキュメントに追加する要素のリストが非常に大きい場合、新しい要素を個別に追加するのは効率的ではありません。はDocumentFragment
、エレメントの収集に使用できる軽量のドキュメント オブジェクトとして機能します。すべての要素の準備ができたら、単一のappendChild
操作を実行して、DOM が何度も更新されるのではなく、1 回だけ更新されるようにしますn
。
var cuisines = ["Chinese","Indian"];
var sel = document.getElementById('CuisineList');
var fragment = document.createDocumentFragment();
cuisines.forEach(function(cuisine, index) {
var opt = document.createElement('option');
opt.innerHTML = cuisine;
opt.value = cuisine;
fragment.appendChild(opt);
});
sel.appendChild(fragment);
デモ