• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:セレクトボックス の 選択規制)

セレクトボックスの選択規制

このQ&Aのポイント
  • セレクトボックスの選択規制を実装するためのJavaScriptコードについて説明します。
  • 未選択のセレクトボックスがある場合に、エラーチェックを行い、選択してくださいというメッセージを表示します。
  • さらに、特定のセレクトボックスが全て未選択の場合には、「参加する会を最低一つは選択してください」というコメントを表示します。

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

たとえばこんな感じでフラグで管理するとよいでしょう。 スクリプトとスタイルシートは外部化しときました。 //hoge.htm <link rel="stylesheet" type="text/css" href="hoge.css"> <script type="text/javascript" src="hoge.js"></script> ********  HTML内のフォーム  ********* <form onSubmit="return fcheck(this)"> <div> <div class="midasi">1 ( * )</div> <div> <SELECT NAME="kaikai"> <OPTION selected VALUE="未選択">選択してください</OPTION> <OPTION VALUE="参加">参加</OPTION> <OPTION VALUE="不参加">不参加</OPTION> </SELECT> </div> </div> <div> <div class="midasi">2 ( * )</div> <div> <SELECT NAME="bunkai1"> <OPTION selected VALUE="未選択">選択してください</OPTION> <OPTION VALUE="参加">参加</OPTION> <OPTION VALUE="不参加">不参加</OPTION> </SELECT> </div> </div> <div> <div class="midasi">3 ( * )</div> <div> <SELECT NAME="bunkai2"> <OPTION selected VALUE="未選択">選択してください</OPTION> <OPTION VALUE="参加">参加</OPTION> <OPTION VALUE="不参加">不参加</OPTION> </SELECT> </div> </div> <div> <div class="midasi">4 ( * )</div> <div> <SELECT NAME="heikai"> <OPTION selected VALUE="未選択">選択してください</OPTION> <OPTION VALUE="参加">参加</OPTION> <OPTION VALUE="不参加">不参加</OPTION> </SELECT> </div> </div> <input type="submit" value="check"> </form> //hoge.js function fcheck(f) { var list={kaikai:"開会",bunkai1:"分会1",bunkai2:"分会2",heikai:"閉会"}; var flg=false; for(var i in list){ if(f[i].value=="未選択"){ window.alert(list[i]+"を選択してください"); return false; } if(f[i].value=="参加") flg=true; } if(!flg) alert("参加する会を最低一つは選択してください。"); return flg; } //hoge.css .midasi{ font-weight:bold; float:left; }

hime_love
質問者

お礼

yambejpさん ご回答ありがとうございます。 >スクリプトとスタイルシートは外部化 こちらは諸所の事情により現実的ではないんです 折角教えていただいていながらすみませんm(_ _)m また、上記のスクリプトまとめて頂いたものを直接書いてもうまく動作しません。 他のチェック事項が全てスルーになってしまいます。 質問しておきながらまことに申し訳ございません。 このレスは下げさせていただきます。 まことに申し訳ございません。