For Want Of A Better Word

selectedを動的につけているセレクトボックスの選択解除・リセット

      2015/04/18

ちょっと、セレクトボックスのリセットをしたく調査。

下記のリンク先の記述のようにselectindexを0にする方法が一般的みたい。

チーズくんの備忘録 [javascript]子要素にあるselectを全てリセット

にゃほ~ – jQuery – selectの選択を解除する

しかし、上記のやり方では自分のフォームではうまく行かなかった。

なにが起きるかというと、

 

一回selectIndexを0にしても、処理終了後、「selectedが付いているoption」が選択状態になってしまう。

 

自分のセレクトボックスは

onChangeでsubmitして、

ページを再度読み込み、

その再読み込みの時に、選択したoptionに”selected”を追加する方式。

その時に、selectIndexを0にしても、そのselectedが付いている項目が選択状態になってしまう。

 

上記参考サイトのやり方は、選択したページ内で遷移、selectedの付け替えをせずにリセットするという場合のもの。

あるいは、「選択済みを表す”selected”」が、「リセットした後に選択状態になって欲しいoption項目」に付いているのが前提の様子。

 

 

なので、

「optionについているselectedを削除してあげたうえで、selectIndexを0にする」

という処理にすればOK!

下記のfunctionをリセットボタンのonClickイベントに設定することで何とかなりました。

 

 

解決―!!

 - javascript | js

  関連記事

js-logo
メモ_gushから_スクロールに応じてHTML部品の表示 右下前に固定表示

要は最初は要素は固定で右下に表示 固定は下記で実施。 position: fix …

js-logo
javascriptでアップロードファイルのファイル名を取得する

一言で言えば、 「ファイルアップロード用のフォームのvalue」 がファイル名に …

google-logo
jsonengine サーバサイド開発なしでGoogleAppEngineのデータを利用した動的画面の作成

[紹介] http://codezine.jp/article/detail/5 …

js-logo
jQueryでライブラリを読んだときに、読み込めているかチェック。

特定のページだけでライブラリを読んでいて、でも、実行側のjsは共通部品として入っ …

wordpress_logo
【WP】投稿入力時にURLを張るだけで、リンクして、かつ表示はタイトルにしてほしい。 そうhatenaブログみたいに。

http://website-homepage.com/wordpress/pl …