每个表单使用多个验证器进行JQuery验证
我有一个表单,里面有一些div块。所有div都有其字段和按钮。在单击按钮时,我只需要验证该div(按钮的父项),并将一些字段异步提交给服务器。一切都很好,但没有验证。我用。正如我所见,我无法编写这样的代码:每个表单使用多个验证器进行JQuery验证,jquery,jquery-validate,forms,Jquery,Jquery Validate,Forms,我有一个表单,里面有一些div块。所有div都有其字段和按钮。在单击按钮时,我只需要验证该div(按钮的父项),并将一些字段异步提交给服务器。一切都很好,但没有验证。我用。正如我所见,我无法编写这样的代码: <script type="text/javascript"> //....... // Validator for general information var userProfileGeneralValidator = $("#form1").va
<script type="text/javascript">
//.......
// Validator for general information
var userProfileGeneralValidator = $("#form1").validate({
onkeyup: false,
onclick: false,
onfocusout: false,
rules: {
txtPrivateNumber: {
required: true
}
},
messages: {
txtPrivateNumber: {
required: "Required!"
}
},
errorPlacement: function (error, element) {
if (error.text() != "") {
}
},
success: function (lbl) {
}
});
// Validator for password information
var userPasswordValidator = $("#form1").validate({
onkeyup: false,
onclick: false,
onfocusout: false,
rules: {
txtOldPass: {
required: true,
minlength: 5
}
},
messages: {
txtOldPass: {
required: "Required!"
}
},
errorPlacement: function (error, element) {
if (error.text() != "") {
}
},
success: function (lbl) {
}
});
</script>
其中
#topUserProfile
是包含控件的div的名称userProfileGeneralValidator
是一个变量,用于保存其他验证选项(消息/位置/etc)。感谢所有帮助过我的人。我以前看过,但最快的方法是创建一个表单,然后用一个。验证调用初始化整个表单。然后,如果您有验证的子案例,请使用.valid()方法确定单个元素的目标。请在此处阅读更多信息:
假设“txtOldPass”在表单1中,它的外观如下:
我以前见过这个,但是最快的方法是创建一个表单并用一个.validate调用初始化整个表单。然后,如果您有验证的子案例,请使用.valid()方法确定单个元素的目标。请在此处阅读更多信息: 假设“txtOldPass”在表单1中,它的外观如下:
我在这个需求中使用的是将多个元素传递给jquery validate插件valid()方法,例如这个方法的一些变体
$('#testdiv :input').valid()
如果您只调用$('#testdiv').valid(),这将不起作用,但使用:输入选择器,调用将告诉您jquery包装集中的所有表单元素是否有效。我用于此要求的是将多个元素传递给jquery validate插件valid()方法,例如,这个的一些变体
$('#testdiv :input').valid()
如果只调用$('#testdiv').valid(),这将不起作用,但使用:输入选择器,调用将告诉您jquery包装集中的所有表单元素是否有效。文档可能已过期?显示
.element()
是检查单个元素的方法(布尔值);如下所示:$(“#myform”).validate().element(“#myselect”)代码>尽管如此,我现在倾向于使用.valid()
作为更好的方法。谢谢,明天我会尽快测试它。文档可能已经过时了?显示.element()
是检查单个元素的方法(布尔值);如下所示:$(“#myform”).validate().element(“#myselect”)代码>尽管如此,我现在倾向于将.valid()
视为更好的方法。谢谢,我们将在明天尽快对其进行测试。谢谢,解决方案非常简单、完整,而且工作正常!因此,我可以验证我喜欢的任何容器,而无需创建!奇怪的是,在文档中找不到这一点。它确实过时且不完整:(mm..已测试..在没有其他表单标记的情况下无法实际工作..没错,输入元素仍必须在表单中,但您可以使用它来验证表单中的部分。使用解决方案更新了问题。要达到此目的,我使用了您的答案。再次感谢:)祝您有愉快的一天!谢谢,解决方案简单、完整且运行良好!因此我可以在不创建的情况下验证我喜欢的任何容器!奇怪的是,在文档中找不到这一点..它确实过时且不完整:(mm..已测试..没有其他表单标记时无法实际工作..没错,输入元素仍然必须在表单中,但您可以使用它来验证表单中的部分。使用解决方案更新问题。要达到目的,我使用了您的答案。再次感谢:)祝您有愉快的一天!
$('#testdiv :input').valid()