【问题标题】:ASP.NET MVC ValidationSummary For Client Side ValidationASP.NET MVC ValidationSummary 客户端验证
【发布时间】:2009-11-12 19:33:25
【问题描述】:

我们的服务器端验证(通过数据注释)运行良好,并在我们的 ValidationSummary 中以我们喜欢的方式发布错误。客户端验证也有效,但错误显示在控件的右侧,验证摘要从不显示。有没有一种简单的方法可以使客户端验证显示看起来像服务器端验证显示?

【问题讨论】:

  • 您使用的是 ASP.NET MVC 2 Preview 2?
  • 信息太少,无法给出答案。
  • 是的,ASP.NET MVC 2 Preview 2。在实体上使用数据注释。

标签: asp.net-mvc validation


【解决方案1】:

如果您正在谈论使用 ASP.NET MVC 2 Preview 2 或任何其他使用jQuery Validation library 生成的客户端验证,您应该查看documentation for jQuery Validation library 中的errorLabelContainererrorContainer

这应该让您的客户端验证看起来更像服务器端验证摘要。 :-)

HTH,
查尔斯

附言。如果您无法更改$('myForm').Validate() 的选项,只需使用$.validator.setDefaults(); 方法。尽管您可能会在页面上使用多个表单/验证摘要时遇到麻烦。

【讨论】:

  • 能否请您在这里详细说明一下。
【解决方案2】:

不确定与 ASP.NET MVC 2 一起使用是否是一种好习惯,但使用xVal 客户端验证摘要很容易做到。

<div id="validationSummary">
        <%= Html.ValidationSummary("Please fix the following problems:") %>
</div>

<%= Html.ClientSideValidation("booking", typeof(Booking))
        .UseValidationSummary("validationSummary") %>

【讨论】:

    【解决方案3】:

    您应该验证正在验证的模型对象,来自IDataErrorInfo 接口的.Error 属性不是String.Empty。这可能会导致您出现的行为。

    【讨论】:

      猜你喜欢
      • 2010-09-14
      • 2014-07-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-12
      • 2011-02-08
      • 1970-01-01
      相关资源
      最近更新 更多