私がやりたいのは、JavaScript配列から複数のドロップダウンoption
の要素を生成することです。select
別の配列(例では配列)の値と同じドロップダウンで各オプションを選択するよりもresults
。
問題は、結果配列に複数の要素がある場合、元のオプションが結果配列の要素数に対してHTMLで乗算されることです。
なぜこれが起こっているのかは理解していますが、現在使用しているものよりも優れた解決策を見つけることができないようです。これは次のようなものです。
var
options = ['Some value', 'Another value', 'Third value', 'Something completely different'],
results = ['Some value', 'Another value'],
selectHtml;
$.each( options, function( index, value ) {
var option = value;
$.each( results, function( index, value ) {
if ( option === value ) {
selectHtml += '<option selected="selected" value="' + option + '">' + option + '</option>';
}
else {
selectHtml += '<option value="' + option + '">' + option + '</option>';
}
});
});
ここで実際の例を見つけることができます:http://jsfiddle.net/wCWyp/
私が達成したいのは同じことですが、要素の乗算はありません。