jQuery验证程序插件可以';无法访问匿名表单中的动态字段

jQuery验证程序插件可以';无法访问匿名表单中的动态字段,jquery,jquery-validate,Jquery,Jquery Validate,我在一个部分中有一个字段,它包含一个电子邮件地址,我想在用户键入并使用 更新: 我的表单没有包含该字段的名称,它实际上是一个部分中的一个部分,它是我需要验证的最后一个字段,它让我很难过 主要问题似乎是我如何尝试访问字段本身,因为它是动态的,我使用jQuery通过$(“input[name*='email']”)和规则来访问它,但是当我尝试在validate plugin函数中使用它时会出错(不用说,jQuery我不擅长) 我如何访问电子邮件字段,因为它显示的内容类似于联系人[884414e3-9

我在一个部分中有一个字段,它包含一个电子邮件地址,我想在用户键入并使用

更新:

我的表单没有包含该字段的名称,它实际上是一个部分中的一个部分,它是我需要验证的最后一个字段,它让我很难过

主要问题似乎是我如何尝试访问字段本身,因为它是动态的,我使用jQuery通过
$(“input[name*='email']”)和
规则来访问它,但是当我尝试在validate plugin函数中使用它时会出错(不用说,jQuery我不擅长)

我如何访问电子邮件字段,因为它显示的内容类似于联系人[884414e3-9262-4a77-a448-b8f885703e9d]。电子邮件

jQuery:

var email = $("input[name*='email']");
    $('form').validate({
        rules: {
            email: "required email",
        },
        messages: {
            email: {
                required: "Enter your Email",
                email: "Please enter a valid email address.",
            }
        }
    });
$('form').validate({
        rules: {
            "input[name*='email']": "required email",
        },
        messages: {
            "input[name*='email']": {
                required: "Enter your Email",
                "input[name*='email']": "Please enter a valid email address.",
            }
        }
    });
也尝试过:

var email = $("input[name*='email']");
    $('form').validate({
        rules: {
            email: "required email",
        },
        messages: {
            email: {
                required: "Enter your Email",
                email: "Please enter a valid email address.",
            }
        }
    });
$('form').validate({
        rules: {
            "input[name*='email']": "required email",
        },
        messages: {
            "input[name*='email']": {
                required: "Enter your Email",
                "input[name*='email']": "Please enter a valid email address.",
            }
        }
    });

如果要获取(第一个)电子邮件字段的值,请使用jQuery的方法


关于我如何实现它的一些问题,以及与插件本身有关的一些误解

它将用于匿名表单,您可以搜索包含特定字符的元素,在本例中为“email”

不确定哪一个是这两个代码示例的首选实现,但这两个都可以。然而,对于.NET来说,似乎需要另一种选择

工作代码

$(document).ready(function () {

    $('form').validate({
        submitHandler: function (form) {
            return false;
        }
    });
    $("[name*='email']").each(function() {
        $(this).rules("add", {
            required: true, // will request content
            email: true // will request a valid email
        });
    });

});

工作示例

如果我用您建议的内容替换我的内容,仍然会有问题。我不想要这样的值,我不相信,使用这种方法我想要字段名,我只能通过
$(“输入['name*='email'])
访问它。尝试使用var email并分配给jQuery,但也不起作用,因为它正在匿名表单中查找一个字段。
.messages()
不是此插件可用的方法。@Sparky只是通过小提琴检查-是的,你是对的,将更新答案,我从文档中看到了该实现方法,我不知道这不是他们的插件。你到底在哪里看到了文档中实现的
.messages()
?我想我昨天看到了,我想这是在一个示例中,但不是100%-可能是我的错误。仅供参考-你可以在
.rules()
方法中放置
messages
对象。