[英]jQuery Validation + Submit via $.post
你好!
我的問題如下 :
驗證插件對我來說很好,除了我不希望表單在它仍然有效時提交。
事實是,它驗證並顯示錯誤,但即使它無效也會提交。
$("form#form-utilizadores").validate({ rules:{ nome:{ required:true }, utilizador:{ required:true }, password:{ required:true }, tipo:{ required:true } } });
$('form#form-utilizadores').submit(function(e){ e.preventDefault(); var data = $(this).serialize(); $.post('submit/submit-utilizadores.php',data,function(data){ alert((data=='sucesso') ? 'Adicionado com sucesso!' : data); top.location.reload(); } ); });
感謝您花時間來幫助我! :)
您應該將您擁有的代碼放在$('form#form-utilizadores').submit()
並將其放在jQuery驗證設置的submitHandler
參數中,試試這個:
$("form#form-utilizadores").validate({
rules: {
// your current rules...
},
submitHandler: function(form) {
var data = $(form).serialize();
$.post(
'submit/submit-utilizadores.php',
data,
function(data) {
alert((data=='sucesso') ? 'Adicionado com sucesso!' : data);
top.location.reload();
}
);
}
});
始終提交當前代碼的原因是因為無論表單是否有效,始終會引發表單submit
事件。 通過submitHandler
讓jQuery驗證是否發布表單,具體取決於它的有效性。
嘗試在提交處理程序中添加此代碼:
$('form#form-utilizadores').submit(function(e){
e.preventDefault();
if($(this).valid() == false){
return;
}
.
.
.
如果驗證失敗,則從提交返回false。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.