Javascript jQuery验证自定义方法规则和具有动态名称的消息?

Javascript jQuery验证自定义方法规则和具有动态名称的消息?,javascript,jquery,jquery-validate,Javascript,Jquery,Jquery Validate,我想使用变量varFunctionID添加一个验证规则,该变量表示一个自定义验证方法。它不查找变量的值,而是搜索一个名为varFunctionID的函数,该函数不存在。如何确保使用变量的值而不是名称?此外,我不能使用名称来代替变量 var varFunctionID = "nameOfMyCustomValidationFunction"; $('#myField').rules('add', { varFunctionID: true }, messages: {

我想使用变量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;
});

不知道你为什么要做这样的事。在编写OP时,完全不清楚为什么不能首先使用自定义方法的实际名称


你不能按你的要求去做。您需要在.rules方法中使用自定义方法的实际名称

编辑:我先前建议的解决方案不可行

自定义方法并不意味着要有一个动态名称,我不知道为什么该名称需要是动态的。自定义方法已创建,您可以将其分配给一个或多个字段,也可以不分配。此函数的任何动态特性都将通过传入自定义参数来处理


.

同一个问题不允许发布多次。请决定删除哪一个。否则,后面的这个将作为副本关闭。谢谢。你不能按你的要求去做。您需要使用自定义方法的实际名称。在写这个问题时,完全不清楚为什么不能首先使用自定义方法的实际名称。是的,我想关闭另一个,但我看不到这样做的选项。经过大量挖掘,这似乎不可能或不可行。相反,我发现了如何将参数传递给验证方法,从而消除了它是动态的需要。因为这个问题更容易理解,所以我关闭了另一个作为副本的问题。但是,作为OP,您还应该看到一个删除链接。如果你愿意的话,这么做可能不是个坏主意。找到了,谢谢。这是正确的。将参数传递给验证方法可以消除名称是动态的需要。