我感到非常沮喪,這個jQuery表單驗證ajaxSubmit();jquery表單驗證ajaxSubmit()
在Chrome中,它似乎失敗了,甚至沒有擊中submitHandler,firefox確實,但仍然繼續action =「contact.php」頁面。我期待它只是在後臺發佈,並可能返回結果,但無法以這種方式實現。
編輯:如果其他人感興趣,找到一個解決辦法,把這行代碼放在你的dom準備好的某個地方。
// disable HTML5 native validation and let jquery handle it.
$('form').attr('novalidate','novalidate');
HTML表單:
<form method="post" action="contact.php" id="contact">
<fieldset>
<input type="text" id="email" class="required email" name="email" maxlength="30" value="youremail @ example.com" />
<input type="text" id="subject" class="required" name="subject" maxlength="24" value="Enter your subject" />
<textarea id="msg" class="required textarea" name="msg" cols="30" rows="5">Reason for contact.</textarea>
<input type="submit" class="formBtn" value="Punch me an Email" />
</fieldset>
</form>
JQuery的:
$(window).load(function(){
$('#contact').validate({
rules:{
email:{required: true, email:true},
subject:{required: true, minlength: 5},
msg:{required: true, minlength: 50}
},
messages:{
email:'',
subject: '',
msg: ''
},
invalidHandler:function(){
$('div.error').hide();
},
focusInvalid:true,
onfocusout:false,
submitHandler: function() {
// never hits with chrome, and alert works in FF4,
// but still goes to contact.php
$('#contact').ajaxSubmit();
}
});
});
http://docs.jquery.com/Plugins/Validation/validate#options我一直在這個文檔頁面上下,我做了他們顯示的方式。甚至嘗試將它封裝在$('#contact')。submit(function(){})中,但是不行。 – robx 2011-05-17 07:21:14
謝謝。由於我發現表單的根本原因無法驗證,因此您的方法就像魅力一樣。 – robx 2011-05-17 18:41:26