使用jquery验证器动态添加条件验证

使用jquery验证器动态添加条件验证,jquery,jquery-validate,Jquery,Jquery Validate,我想在页面加载上动态添加条件规则这里是我的代码,我已经尝试过了 我创造了 第一个代码示例 $("input[name$='DistanceToRespondingFireDept']").rules("add", { required: { depends: function (element) { return $("input:radio[name='DistanceToNearestFireHydrnt']:chec

我想在页面加载上动态添加条件规则这里是我的代码,我已经尝试过了 我创造了 第一个代码示例

 $("input[name$='DistanceToRespondingFireDept']").rules("add", {
        required: {
            depends: function (element) {
                return $("input:radio[name='DistanceToNearestFireHydrnt']:checked").val() == 'U';
            }
        },
        messages: {
            required: "Tested"
        }
    });
第二代码

$("input[name$='DistanceToRespondingFireDept']").rules("add", {
        required: function (element) {
            return $("input:radio[name='DistanceToNearestFireHydrnt']:checked").val() == 'U';
        },
        messages: {
            required: "Tested"
        }
    });
我收到一个错误“无法调用未定义的方法调用”

如果我不添加任何条件,只需执行简单的要求:true,它就可以工作


任何关于如何修复的建议都会导致语法错误

开始的大括号,
{
,从这里丢失了

if (test === "a") { // <-- this opening brace was missing

工作演示

出现语法错误

开始的大括号,
{
,从这里丢失了

if (test === "a") { // <-- this opening brace was missing

工作演示

在JSFIDLE中不需要
标记;只需插入
之间的HTML即可。您还应该在OP中显示完整的代码示例。否则,当JSFIDLE死亡时,这个问题对其他人没有多大帮助。您不需要
 
标记在JSFIDLE中;只需插入
之间的HTML。您还应该在OP中显示完整的代码示例。否则,当JSFIDLE死亡时,这个问题对其他人没有多大帮助。我已经更新了JS FIDLE,但忘记在问题中更新它{错误。其次,这是为测试而创建的虚拟表单,因此没有更改按钮类型,只是简单的复制粘贴:-(@develhsalian,那么问题出在哪里呢?正如我的JSFIDLE所演示的那样,您的代码工作正常。我想添加条件验证,而不仅仅是必需的:true我已经共享了问题中的代码示例,即如果所选的radiobutton值为,则是必需的。UI已经更新了JS FIDLE,但在问题中忘记了更新它{错误。其次,这是为测试而创建的虚拟表单,因此没有更改按钮类型,只是简单的复制粘贴:-(@develhsalian,那么问题出在哪里呢?正如我的jsFiddle所演示的那样,您的代码工作正常。我想添加条件验证,而不仅仅是必需的:true我已经共享了有问题的代码示例,即如果所选的radiobutton值为U,则需要