送信ボタンを押した後にデータを送信するフォームがあります。必要に応じていくつかの入力フィールドにタグを付けた後、送信ボタンを押した後に必要なフィールドに入力がない場合、フォームは常に私に表示されます。フォームの送信が成功した後のリダイレクト
私が気づいておきたいのは、提出が成功した場合、別のページにリダイレクトすることです。空白の必須フィールドがある場合は、別のページにリダイレクトせずにフォームに表示されます。今では
私は、次のコードを持っている:
は、[送信]ボタンを:
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" name="submityes" id="submityes" class="btn btn-danger">Submit</button>
</div>
</div>
また、私はフォームを送信すると、別のページに私をリダイレクトするために、次のJS機能を持っています。
$('document').ready(function() {
"use strict";
$(function() {
$('#submityes').click(function() {
$.ajax({
type: "POST",
/*url: "process.php", //process to mail
data: $('form.contact').serialize(),*/
success: function (msg) {
window.location.replace("/submit_resolved.php");
},
error: function() {
alert("error");
}
});
});
});
});
私が今問題としている問題は、すべての必須フィールドが完全であるかどうかにかかわらず、常に「submit_resolved.php」ページにリダイレクトされることです。
どのように私はこの問題を解決することができますか?すべての必須フィールドが空でない場合にのみリダイレクトする必要があります。
あなたの現在のコードは、*フォーム*を提出していない、それは最初の検証を一切行わずにAjaxリクエストを行います。標準(非Ajax)のフォーム提出を行い、PHP内のリダイレクトを処理するのはなぜですか? – nnnnnn
イベントリスナーを変更して、フォームの 'submit'を聞き、次にHTML要素で' required'属性を使用することができます.... eventListenerを次のように変更した場合、 'event.preventDefault();'フォームを聞いて、フォームがデフォルトのアクション 'post'をしないようにしてください。フォームタグでフォームをラップするかもしれません.... – NewToJS
ありがとうございます。どのように私はajaxなしでコードを行うことができますか?そして、それをajaxでやっているのと違うのは何ですか? –