我有一個特定字段需要服務器端和客戶端驗證的表單。 我正在使用jquery驗證插件來執行客戶端驗證。下面是相同的代碼。字段驗證 - 服務器端和客戶端
$('#createapp').validate({
rules: {
appname: {
minlength: 8,
required: true
},
apptitle: {
required: true
}
},
highlight: function(label) {
$(label).closest('.control-group').addClass('error');
},
success: function(label) {
label
.text('OK!').addClass('valid')
.closest('.control-group').addClass('success');
}
});
現在我需要檢查用戶試圖進入的應用程序名是否已經存在於數據庫中。我正在使用ajax執行使用此代碼的檢查
$('#appname').focusout(function(){
$.ajax({
type: "POST",
url: "<?php echo base_url();?>index.php/app/application/check_app",
data: "appname="+$("#appname").val(),
success: function(msg){
if(msg == "false")
{
var controlDiv = $('#appname').closest('.control-group');
controlDiv.addClass('error');
controlDiv.removeClass('success');
}
else
{
var controlDiv = $('#appname').closest('.control-group');
controlDiv.addClass('success');
controlDiv.removeClass('error');
}
}
});
});
雖然這會使字段控制爲紅色,但不會停止表單提交。我不想複製服務器端的邏輯來檢查並返回錯誤。
什麼和哪裏可以添加代碼來禁用表單提交,如果應用程序名稱已被採納?
請幫助使用$('#createapp').validate(...code...).cancelSubmit = true;