我是一个jquery新手。我可以在我的表单中使用验证规则。我正在使用Java框架,出于某种原因,当它从.xhtml转换为.html时,所有ui组件的id / name都以包含它的形式为前缀。我想将这些验证规则重用于其他两种形式,但由于前缀问题,我需要使用js变量并将formId传递给函数。出于某种原因,这给我一个问题:
var positionTitle = "#myForm:positionTitle";
$("#" + formId).validate({
rules:{
positionTitle : {required:true, maxlength:50},
...
$("#" + formId).validate({
rules:{
"#myForm:positionTitle" : {required:true, maxlength:50},
...
答案 0 :(得分:5)
在表单上调用.validate()
后,您可以执行以下操作:
$("[name='" + positionTitle + "']").rules("add", {required:true, maxlength:50});
...但是您不能将变量用作对象文字中的名称。
另一个选择是在rules
对象传递到validate()
之前构建它,但是这也有点混乱,我不能说基于这个问题哪个更好,但是如果你有很多这些,你可能想要rules
建筑路线。