私は問題に直面しています。 私は自分の入力フィールドを検証するためのコードを書いて、それをテストして正常に動作していました。次に、JqueryのAjax投稿を使用してフォームの送信を実装しました。今私の問題は、私が以前に実装したバリデーション機能が、送信ボタンをクリックしても呼び出されなくなったことです。検証なし。Ajaxの送信中にJavascriptフォームの検証が機能しない
同じ質問のStackOverflowに掲載さが、その私のproblamを解決していない 私は上記のコードを使用する方法を知りませんでした質問
$('#submit').click(function (e){
e.preventDefault();
if(!$("form").valid()) return;
...
});
のいくつかのいずれかの答え
HTML
<div class='well'>
<form action="" method="post" class="contactf" name="contactform" onsubmit="return validd()">
<div class='row'>
<div class='col-sm-4'>
<div class='form-group'>
<label for='fname'>Name</label>
<input type='text' name='namee' class='form-control' />
</div>
<div class='form-group'>
<label for='number'>Number</label>
<input type='number' name='numberr' class='form-control' />
</div>
<div class='form-group'>
<label for='email'>Email</label>
<input type='email' name='emaill' class='form-control' />
</div>
<div class='form-group'>
<label for='subject'>Subject</label>
<input type='text' name='subjectt' class='form-control' />
</div>
</div>
<div class='col-sm-8'>
<div class='form-group'>
<label for='message'>Message</label>
<textarea class='form-control' name='messagee' rows='10'></textarea>
</div>
<div class='text-right'>
<input type='submit' name="contactsubmit" class='btn btn-primary' value='Submit' />
</div>
</div>
</div>
</form>
<div class="thanks" style="display: none;">
<h3>Thanks for Enquiry us..Our Team will contact you as soon as possible</h3>
</div>
</div>
J avascriptコードとAjax
function validd() {
var nam = document.contactform.namee.value;
var number = document.contactform.numberr.value;
var email = document.contactform.emaill.value;
var subject = document.contactform.subjectt.value;
var message = document.contactform.messagee.value;
if (nam == "") {
alert('Please Fill Your Name');
document.contactform.namee.focus();
return false;
}
if (number == "" || number == null) {
alert('Please Enter Your Number');
document.contactform.numberr.focus();
return false;
}
if (number.length < 9) {
alert('Please Enter Your Number at least 10 Digit');
document.contactform.numberr.focus();
return false;
}
if (email == "" || email == null) {
alert('Enteryour Email');
document.contactform.emaill.focus();
return false;
}
if (subject == "" || subject == null) {
alert('Please Fill Your Subject');
document.contactform.subjectt.focus();
return false;
}
if (message == "" || message == null) {
alert('Please Fill Your Message');
document.contactform.messagee.focus();
return false;
} else {
return true;
}
}
$(document).ready(function() {
$(function() {
$('.contactf').submit(function(e) {
e.preventDefault();
var form = $(this);
var post_url = 'contact-enquiry.php';
var post_data = form.serialize();
$.ajax({
type: 'POST',
url: post_url,
data: post_data,
success: function(msg) {
$(form).fadeOut(80, function() {
form.html(msg).fadeIn().delay(100);
$('.thanks').fadeIn();
});
}
});
});
});
});
? –
@kevinSpaceyIsKeyserSözeonsubmit = "返されたvalidd()"は
なぜあなたはsubmit関数でvalidを呼び出しているだけではありませんか? –