※ ChatGPTを利用し、要約された質問です(原文:必須項目の回答がない場合、次のページに進まない)
JavaScriptを用いた必須項目の回答チェック
2017/10/01 14:23
このQ&Aのポイント
JavaScriptを用いて、必須項目(プルダウンメニュー)の回答が全てされていない場合に、次のページへ進まず、アラートが表示されるように設定したいと考えています。
設定する項目が13項目あり、8項目目から13項目目が未回答でも次のページに進めてしまいます。これだけ量が多くなると、このプログラムだと実現出来ないのでしょうか?
どこをどう直せば、改善されるのかを教えていただければ幸いです。
お世話になります。
プログラミング初心者のものです。
JavaScriptを用いて、必須項目(プルダウンメニュー)の回答が全てされていない場合に、次のページへ進まず、アラートが表示されるように設定したいと考えています。
そこで、以下のコードを書いたのですが、
設定する項目が13項目あり、8項目目から13項目目が未回答でも次のページに進めてしまいます。
これだけ量が多くなると、このプログラムだと実現出来ないのでしょうか?
どこをどう直せば、改善されるのかを教えていただければ幸いです。
不躾な質問だとは重々承知しておりますが、時間がないため、何卒よろしくお願いいたします。
●JavaScript
<script type="text/javascript">
<!--
function check(){
var flag = 0;
// 設定開始(チェックする項目を設定してください)
if(document.aboutfande.fande1.options[document.aboutfande.fande1.selectedIndex].value == ""){
flag = 1;
}
else if(document.aboutfande.fande2.options[document.aboutfande.fande2.selectedIndex].value == ""){
flag = 1;
}
else if(document.aboutfande.fande3.options[document.aboutfande.fande3.selectedIndex].value == ""){
flag = 1;
}
else if(document.aboutfande.fande4.options[document.aboutfande.fande4.selectedIndex].value == ""){
flag = 1;
}
else if(document.aboutfande.fande5.options[document.aboutfande.fande5.selectedIndex].value == ""){
flag = 1;
}
else if(document.aboutfande.fande6.options[document.aboutfande.fande6.selectedIndex].value == ""){
flag = 1;
}
else if(document.aboutfande.fande7.options[document.aboutfande.fande7.selectedIndex].value == ""){
flag = 1;
}
else if(document.aboutfande.fande8.options[document.aboutfande.fande8.selectedIndex].value == ""){
flag = 1;
}
else if(document.aboutfande.fande.options[document.aboutfande.fande9.selectedIndex].value == ""){
flag = 1;
}
else if(document.aboutfande.fande10.options[document.aboutfande.fande10.selectedIndex].value == ""){
flag = 1;
}
else if(document.aboutfande.fande11.options[document.aboutfande.fande11.selectedIndex].value == ""){
flag = 1;
}
else if(document.aboutfande.fande12.options[document.aboutfande.fande12.selectedIndex].value == ""){
flag = 1;
}
else if(document.aboutfande.fande13.options[document.aboutfande.fande13.selectedIndex].value == ""){
flag = 1;
}
// 設定終了
if(flag){
window.alert('選択されていません'); // 選択されていない場合は警告ダイアログを表示
return false; // 送信を中止
}
else {
return true; // 送信を実行
}
}
// -->
</script>
●HTML(長くなるため最初の2つだけ書いておきます)
<h1><span class="daimei"><b>ウォーターベースファンデーション</b></span><span class="honbun">について</span></h1>
<form action="tiku.php" method="post" name="aboutfande" onSubmit="return check()">
<p><span class="honbun"> Q1.この商品を買いたいと思いますか?</span>
<select name="fande1">
<option value="1">はい</option>
<option value="2">いいえ</option>
<option value="" selected>選択してください</option>
</select>
</p>
<span class="honbun"> Q2.この商品にどのような印象を持ちましたか?<br> もっとも当てはまるものを選択してください</span><br>
<p><span class="honbun"> 1.この商品を魅力的と感じた</span>
<select name="fande2">
<option value="1">全く当てはまらない</option>
<option value="2">ほとんど当てはまらない</option>
<option value="3">あまり当てはまらない</option>
<option value="4">どちらともいえない</option>
<option value="5">やや当てはまる</option>
<option value="6">かなり当てはまる</option>
<option value="7">非常に当てはまる</option>
<option value="" selected>選択してください</option>
</select></p>
質問の原文を閉じる
質問の原文を表示する
お礼
ふおおおおお!ありがとうございます! 一番やりたかった形で実現することができました。