少しのjquery、ajax、およびphpを使用してフォームを作成しました。ajax、検証、および php 処理はうまく機能します。送信後にフォームを非表示にする次のコードを思いつきましたが、これが良い方法かどうかはわかりません。アドバイスをお願いします。
ajax呼び出しを含むjsスクリプトの下
<script type="text/javascript">
$(document).ready(function(){
$("#submitContact").click(function() {
$.ajax({
cache: false,
type: 'POST',
url: 'form/process.php',
data: $("#contact_form").serialize(),
success: function(response) {
$("#formstatus").hide().html(response).slideToggle(600);
}
});
});
});
</script>
上記のコードは、php を呼び出して検証し、div#formstatus を入力して、フォームが送信されたかどうかをユーザーに通知します。
私の process.php 内で、echo js スクリプトを使用してエラーが見つからない場合は、フォームを非表示にします。
// If no errors found echo succes message
if (!($formerrors)) :
//Hide the form
echo '<script type="text/javascript">
$(document).ready(function(){
$("#contact_form").hide();
});
</script>';
// display success message
echo '<div>
Your message has been sent. <br />
Thank you for contacting us!
</div>';
Etc....
要約する
と、この方法を使用してフォームを非表示にする必要がありますか? (動作するため)
注。私はjqueryとajaxが初めてです:)