今、ユーザーに入力させそれをconfirm.phpという確認画面で見せるプログラムを作っているのですが、formにバリデーションを当ててもaction=confirm.phpへ行ってしまいます。
リンクしてしまう前にvalidationを当てるにはどうしら良いでしょうか?
今のhtmlは以下です。
HTML
1<main> 2 <form action="confirm.php" method="post" name="form" onsubmit="return validate()"> 3 <p>あなたの達成したい目標をご入力の上、「確認画面へ」ボタンをクリックしてください。</p> 4 <div class="forms"> 5 <p class="form-group"> 6 <label>お名前</label> 7 <input type="text" name="name" placeholder="例)山田太郎" value=""> 8 </p> 9 10 11 <p class="form-group"> 12 <label>メールアドレス<span>(必須)</span></label> 13 <input type="text" name="email" placeholder="例)guest@example.com" value=""> 14 </p> 15 16 <p class="form-group"> 17 <label>目標<span>(必須)</span></label> 18 <input type="text" name="goal" placeholder="例)10億円でバイアウト" value=""> 19 </p> 20 21 <p class="form-group"> 22 <label>期限<span>(必須)</span></label> 23 <input type="date" name="deadline" value="2018-01-01"> 24 </p> 25 26 <p class="form-group"> 27 <label>リマインド頻度<span>(必須)</span></label> 28 <select name="remind_frequency"> 29 <option value="everyDay">毎日</option> 30 <option value="everyWeek">毎週</option> 31 <option value="everyMonth">毎月</option> 32 <option value="everyYear">毎年</option> 33 </select> 34 </p> 35 <p class="form-group"> 36 <label>目標詳細</label> 37 <textarea name="gaol_detail" rows="10" placeholder="30歳で10億円の企業のバイアウトをして、その後はどんどんん新しいサービスの開発に携わる。"></textarea> 38 </p> 39 </div> 40 <button type="submit" id="form_id" class="btn-gradient blue">確認画面へ</button> 41 </form> 42</main>
そしてjqueryで制御しようとしたのが以下のコードです。
参考にしているのは以下のサイトです。
http://qiita.com/kazu56/items/cdbf4e371cdc699709f1
http://d.hatena.ne.jp/gelegele/20120615/form_validation
http://uxmilk.jp/9235
javascript
1 2$(function(){ 3 4 $('#form_id').submit(function(){ 5 var error; // エラー用の変数を定義 6 7 var name_value = $("input[name=name]").val(); 8 email_value = $("input[name=email]").val(); 9 goal_value = $("input[name=goal]").val(); 10 deadline_value = $("input[name=deadline]").val(); 11 remind_frequency_value = $("[name=remind_frequency]").val(); 12 13 14 if(name_value == ""){ 15 alert("名前を入力してください"); 16 return false; 17 } 18 if(email_value == ""){ 19 alert("アドレスを入力してください"); 20 return false; 21 } 22 if(goal_value == ""){ 23 alert("目標を入力してください"); 24 return false; 25 } 26 if(deadline_value == ""){ 27 alert("期限を入力してください"); 28 return false; 29 } 30 if(remind_frequency_value == ""){ 31 alert("頻度を入力してください"); 32 return false; 33 } 34 return false; 35 }); 36});
わかるかた、心当たりあるかたご教授いただきますと嬉しいです。
よろしくお願いいたします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/08/07 03:11