我有一个验证规则,我想使用变量varFunctionID添加,它代表一个自定义验证方法。它不是查找变量的值,而是搜索名为varFunctionID的函数,该函数不存在。如何确保使用变量的值而不是名称?另外,我不能用名字代替变量。
var varFunctionID = "nameOfMyCustomValidationFunction";
$('#myField').rules('add', {
varFunctionID: true
},
messages: {
varFunctionID: "My message."
}
});
*编辑* 没有办法让这个名字变得动态。处理这种需求的方法是将参数传递给验证方法,如下所示:
$('#myField').rules('add', {
myFunction: { myParm: "parm" }
},
messages: {
myFunction: "My message."
}
});
jQuery.validator.addMethod("myFunction", function (value, element, options) {
var passParm= options.myParm;
});
答案 0 :(得分:0)
不确定为什么你需要做这样的事情。在编写OP时,我们完全不清楚为什么你不能首先使用自定义方法的实际名称。
你无法做你想要的事情。您需要在.rules()
方法中使用自定义方法的实际名称。
编辑:我之前建议的解决方法不可行。
自定义方法并不意味着具有“动态”名称,我不确定为什么名称需要是动态的。将创建自定义方法,您可以将其分配给一个或多个字段,也可以不分配。通过传入自定义参数,可以处理有关此函数的任何“动态”。