我想在使用Ajax请求将表单提交到我的php脚本之前验证我的表单。我已经通过stackoverflow看,并没有发现有用的东西。我仍然对jQuery感到陌生,对我如此光秃秃的。在通过Ajax请求提交之前使用jQuery进行表单验证
我有3个输入和一个提交按钮:
<input type="text" name="full-name" id="full-name" value="" placeholder="Full Name" />
<input type="text" name="email" id="email" value="" placeholder="Email" />
<textarea name="message" id="message" value="" rows="8" placeholder="Message"></textarea>
<input type="submit" id="contact-submit" class="contact-submit" value="Submit">
<div id="messageResponse" class="center" style="display:none;"></div>
$(document).ready(function() {
function validator(){
return $('form').validate();
}
$('form').on('submit', function(e) {
e.preventDefault();
$.ajax({
dataType: 'html',
type: 'post',
url: 'mail.php',
data: $('#contact-form').serialize(),
beforeSubmit: validator,
success: function(responseData) {
$('#contact-submit').remove();
$('#messageResponse').fadeIn(1000);
$('#messageResponse').html(responseData);
},
error: function(responseData){
console.log('Ajax request not recieved!');
}
});
// resets fields
$('input#full-name').val("");
$('input#email').val("");
$('textarea#message').val("");
})
});
我应该使用这个插件?我所需要的是用红色边框颜色验证的名称,电子邮件和消息。这让我非常头疼,明天我会与客户会面,最终确定网站。如果我找不到工作解决方案,我不会问问题。
我试图用这个也:jQuery Form Validator Plugin
仅供参考,您可以链接的东西'$( '#messageResponse')淡入(1000 ).html(responseData);' – Popnoodles 2013-03-03 02:44:12
感谢您的提示! – fryvisuals 2013-03-03 02:56:10
使用jQuery Validate插件时,您的'ajax'函数进入内置的'submitHandler'回调函数,该回调函数仅在有效表单上触发。请参阅:http://docs.jquery.com/Plugins/Validation/validate#toptions – Sparky 2013-03-03 06:00:00