【问题标题】:c# dataannotations and jquery- how do i get them to communicate (link with each other)c# dataannotations 和 jquery-我如何让它们通信(相互链接)
【发布时间】:2011-11-09 16:54:56
【问题描述】:

如何让数据注释与自定义 jquery 脚本对话。

 public class ProductViewModel
        {
            [Required]
            public string Name { get; set; }

        }
    @using (Html.BeginForm)
    {
        @Html.EditorFor(model => model.Name)
        @Html.ValidationMessageFor(model=>Model.Name)
       <input type="submit" value="Submit" id="NewVarianceSubmitButton" />
    }

    Now jquery
    $(":submit").click(function () {
     if dataannotations are all valid  above then ...BUT HOW!

        $(this).clone().insertAfter($(this)).attr("disabled", "true");
        $(this).hide();

【问题讨论】:

  • 我同意 Aliostad,您只需要启用客户端验证。如果您需要编写自定义属性,我写了一篇博文here,其中链接到ContainsAttribute的完整项目示例
  • 看了你的文章,有点迷糊。您建议我创建一个自定义属性,将其放在字符串名称上并让 mvc 为我解决?
  • 你想做什么但不起作用?当您启用客户端验证时,MVC 会为您“弄清楚”。我的帖子只是从自定义属性的角度向您展示了这是如何完成的。 DataAnnotations 命名空间提供了足够的属性,您可能不需要自定义属性。您确实需要在页面中的 jquery 脚本之后包含 jquery.validate 和/或不显眼的文件,以便客户端验证正常工作。

标签: c# jquery asp.net-mvc-3


【解决方案1】:

您需要启用client side validation

您不会编写代码来启用或禁用。 这一切都是通过启用客户端校准为您完成的。

【讨论】:

    猜你喜欢
    • 2018-04-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-05
    • 2012-04-08
    • 2011-10-12
    • 2013-05-03
    • 2021-11-07
    相关资源
    最近更新 更多