我正在使用jQuery Validation 插件来验证我的表单。现在我想验证我网站上的每个表单。这有效:
$('form').validate({
<?php echo $translation["validation_lang"];?>
errorPlacement: function (error, element) {
$(element).tooltipster('update', $(error).text());
$(element).tooltipster('show');
},
success: function (label, element) {
$(element).tooltipster('hide');
}
});
我正在使用Tooltipster在其相应字段旁边显示错误。同样,这有效。那里的PHP
-string 可以选择加载语言包。
现在我的网站上有其他需要附加规则的表格。例如,注册表应该检查用户名可用性,检查用户名有效性(长度,字符,...)等。
$('#registerForm').validate({
rules: {
username: {
minlength: 3,
maxlength: 50
},
password1: {
minlength: 5
},
password2: {
minlength: 5,
equalTo: "#password1"
},
email: {
remote:{
url: "getContent.php",
type: "post",
data: {
type: "checkMail"
}
}
},
username: {
remote: {
url: "getContent.php",
type: "post",
data: {
type: "checkUser"
}
}
}
},
messages: {
email: {
remote: "<?php echo $translation["already_registered"][0];?>"
},
username: {
remote: "<?php echo $translation["already_registered"][1];?>"
}
}
});
将这两个代码片段放在同一页面上是行不通的。当上面的代码主体(因此rules
and messages
)在初始$('form').validate({
而不是它自己的内部时,$('#registerForm').validate({
它确实有效。我似乎无法在任何地方找到如何将某些规则添加到特定表单,同时保持所有表单的“一般”规则。
简而言之:如何将规则/消息/submitHandlers 添加到具有特定 ID 的特定表单,同时保持通用表单规则?