jQuery で選択ボックスのすべてのオプションを削除し、オプションを 1 つ追加して選択するにはどうすればよいでしょうか? 質問する

jQuery で選択ボックスのすべてのオプションを削除し、オプションを 1 つ追加して選択するにはどうすればよいでしょうか? 質問する

コア jQuery を使用して、選択ボックスのすべてのオプションを削除し、オプションを 1 つ追加して選択するにはどうすればよいでしょうか。

私のセレクトボックスは以下のとおりです。

<Select id="mySelect" size="9"> </Select>

編集: 次のコードは連鎖に役立ちました。ただし、(Internet Explorer では)追加されたオプションが選択されませんでした。(.val('whatever')の両方で同じ「値」を使用しました。).append.val

$('#mySelect').find('option').remove().end()
.append('<option value="whatever">text</option>').val('whatever');

編集: このコードを模倣しようとして、ページ/フォームがリセットされるたびに次のコードを使用します。この選択ボックスには、ラジオ ボタンのセットが表示されます。 の方.focus()が近かったですが、オプションは のように選択されたようには表示されませんでした.selected= "true"。既存のコードに問題はありません。jQuery を学習しようとしているだけです。

var mySelect = document.getElementById('mySelect');
mySelect.options.length = 0;
mySelect.options[0] = new Option ("Foo (only choice)", "Foo");
mySelect.options[0].selected="true";

編集: 選択した回答は、私が必要としていたものに近かったです。これは私にとってはうまくいきました:

$('#mySelect').children().remove().end()
.append('<option selected value="whatever">text</option>') ;

しかし、両方の答えが最終的な解決策につながりまし...

ベストアンサー1

$('#mySelect')
    .find('option')
    .remove()
    .end()
    .append('<option value="whatever">text</option>')
    .val('whatever')
;

おすすめ記事