だから私はドロップダウンリストを持っています
<select id="theSelectId">
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="mercedes">Mercedes</option>
<option value="audi">Audi</option>
</select>
これは私が欲しいものです
<select id="theSelectId">
<option value="" selected="selected"></option>
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="mercedes">Mercedes</option>
<option value="audi">Audi</option>
</select>
前に空のオプションを追加してこれに設定しようとして、ユーザーに元のリストから値を選択するように強制したいが、選択する必要があるオプションが表示されたときに空にしたい。
これを試してみますが、動作しません
// Add blank option
var blankOption = {optVal : ''};
$.each(blankOption, function(optVal, text) {
$('<option></option>').val(optVal).html(text).preprendTo('#theSelectId');
});
そして、私はこれを試してみましたが、他の値をクリアします
$('#theSelectId option').prependTo('<option value=""></option>');
これはうまくいきました:
$("#theSelectId").prepend("<option value='' selected='selected'></option>");
Firebugの出力:
<select id="theSelectId">
<option selected="selected" value=""/>
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="mercedes">Mercedes</option>
<option value="audi">Audi</option>
</select>
順序を逆にする場合は、.prependTo
を使用することもできます。
$("<option>", { value: '', selected: true }).prependTo("#theSelectId");
ソリューションネイティブJavascript:
document.getElementById("theSelectId").insertBefore(new Option('', ''), document.getElementById("theSelectId").firstChild);