我是新来的jQuery。
在同一时间使用jQuery验证插件及的Cufón工作是给我很艰难的时期。
基本上,我想检测事件一次jQuery验证做了什么,它有直后它做的事,并呼吁Cufon.refresh()。
$('#commentForm').validate({
rules: {
password: {
required: true,
minlength: 8,
maxlength: 8,
number: true
},
}
});
我们期待<label class="error"> SOME TEXT </label>
当形式是无效的。
一旦创建我想Cufon.refresh()通过jQuery验证创建的标签上。如何检测时jQuery验证完成,并调用基于该事件的东西吗?
任何帮助非常赞赏。问候,彼得
由于@Ariel - 如果有一个“成功”,必须有一个“未成功”为好,这样..
工作代码:
$('#commentForm').validate({
rules: {
password: {
required: true,
minlength: 8,
maxlength: 8,
number: true
}
},
showErrors: function(errorMap, errorList) {
this.defaultShowErrors();
Cufon.refresh();
//alert('not valid!')
},
success: function() {
//alert('valid!')
}
});
再次感谢您的想法!
使用success
选项:
$('#commentForm').validate({
rules: {
password: {
required: true,
minlength: 8,
maxlength: 8,
number: true
},
}
success: function() { .... }
});
请注意,您必须输入密码对象的关闭括号后多余的逗号。这将使IE中的一个错误。
<script src="js/validate/jquery-1.11.1.min.js"></script>
<script src="js/validate/jquery.validate.min.js"></script>
<script src="js/validate/additional-methods.min.js"></script>
<script>
jQuery.validator.setDefaults({
success: "valid"
});
var form = $("#myform");
form.validate({
rules: {
name: {required: true, minlength: 2},
lastname: {required: true, minlength: 2}
}
});
$("#button").click(function() {
if(form.valid() == true ) { // here you check if validation returned true or false
$("body").addClass("loading");
}
})
</script>
submitHandler: { function(){ bla bla }}
这将允许您在验证完成后执行代码。你需要放置一个提交表单代码虽然,因为它取代默认的处理程序。
编辑:
// specifying a submitHandler prevents the default submit
submitHandler: function() {
alert("submitted!");
},
// set this class to error-labels to indicate valid fields
success: function(label) {
// set as text for IE
label.html(" ").addClass("checked");
}
您可以使用到你想要做什么。 submitHandler允许你停止提交并执行代码,而不是(你都不可能用它来执行代码之前提交),或成功后提交给执行代码。
把它放在errorPlacement
选项里面。
errorPlacement: function(error, element) {
error.appendTo( element.parent() );
yourCodeHere();
}
$(document).ready(function() {
$('#commentForm').submit(function(){
var validationResponse = $('#commentForm').valid();
if(validationResponse) {
// when true, your logic
} else {
// when false, your logic
return false;
}
});
$("#commentForm" ).validate({
rules: {
"first_name": {
required: true
}
},
messages: {
"first_name": {
required: "First Name can not be empty"
}
}
});
});