• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:チェック判定のスクリプトについて教えてください)

チェックボックスでアラートを表示するスクリプトについての質問

このQ&Aのポイント
  • 質問者は、複数のチェックボックスがある場合、どのように追加するべきかについて困っています。
  • 現在のスクリプトでは、1つのチェックボックスが選択されていない場合にアラートが表示されるようになっています。
  • 質問者は、1つのチェックボックスが選択されている場合はアラートを表示せずに処理を進めたいと考えています。

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

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

アンカーの一つ前のチェックボタンをチェックするだけならこう? <script> function Check(obj) { var p=obj; var flg=false; while(p=p.previousSibling){ if(p.nodeName=="INPUT" && p.type=="checkbox"){ flg=p.checked; break; } } if(!flg) alert("未チェックの項目があります。"); return flg; } </script> <form> <div><input type="checkbox" name="select01"><a onclick="return Check(this);" href="http://www.yahoo.co.jp/">yahoo</a></div> <div><input type="checkbox" name="select02"><a onclick="return Check(this);" href="http://www.google.com/">google</a></div> <div><input type="checkbox" name="select03"><a onclick="return Check(this);" href="http://www.goo.ne.jp/">goo</a></div> </form>

ramentognes
質問者

お礼

ご回答および動くコードまでありがとうございます! 大変助かりました。 (JavaScript初心者の私にとっては)このような動きでも複雑なコードになるのですね。 勉強させていただきます。

その他の回答 (1)

  • LancerVII
  • ベストアンサー率51% (1060/2054)
回答No.1

こんにちは。 こんな感じでしょうか。 ==== JavaScript function check ( name ) { // チェック対象の名前をnameに受け取る // 受け取ったnameを元に要素を取得 var select = document.getElementsByName(name)[0]; // 取得した要素のチェック状態を返す // チェックされていればtrueが返るの return select.checked; } ==== HTML <form> <input type="checkbox" name="select01" value="y" /><a href="http://www.yahoo.co.jp" onclick="return check('select01');">Yahoo</a> <input type="checkbox" name="select02" value="g" /><a href="http://www.google.co.jp" onclick="return check('select02');">Google</a> <input type="checkbox" name="select03" value="e" /><a href="http://www.excite.co.jp" onclick="return check('select03');">Excite</a> </form>

ramentognes
質問者

お礼

ご回答ありがとうございます。 コメントもつけていただき参考になります。 勉強させていただきます!

関連するQ&A

専門家に質問してみよう