0

在我的布局页面中,我有以下链接到验证 Javascript 文件,

 <script src="@Url.Content("~/Scripts/jquery-1.4.4.min.js")" type="text/javascript"> </script>
    <script src="@Url.Content("~/Scripts/jquery.validate.min.js")"type="text/javascript"> </script>
         <script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.js")"type="text/javascript"></script>

我的实体装饰有验证属性,例如

[Required(ErrorMessage ="Please enter a customer name")]
    public string CustomerName { get; set; }

然后在我看来,我在更新字段之后指定了验证消息,如下所示

<div class="label-for">@Html.LabelFor(model => model.CustomerName)</div>
<div class="editor">@Html.EditorFor(model => model.CustomerName)</div>
@Html.ValidationMessageFor(model => model.CustomerName) 

验证正在工作,但它不在客户端,我理解的方式是,当其中一个字段在切换到另一个字段后留空时,应该显示错误消息,是否需要其他任何东西才能使客户端验证正常工作?

4

3 回答 3

0

可能是这样:确保在您的 web.config 文件中,将“ClientValidationEnabled”设置为“True”

<appSettings>
    <add key="ClientValidationEnabled" value="true"/>
</appSettings>

注意:在 MVC3 Web 项目中,有两个 web.config 文件,一个位于“View”文件夹下,另一个位于根 Web 项目下。确保根目录中的一个不会覆盖另一个。

于 2011-07-08T20:46:58.780 回答
0

jqueryIIRC和jquery.validate版本之间存在一些不兼容性。您似乎使用的是旧版本的 jquery 1.4.4。尝试使用最新的更新。例如,安装ASP.NET MVC 3 工具更新并在 Visual Studio 中创建一个新的 ASP.NET MVC 项目,这将为您提供以下脚本的正确版本:jquery、jquery.validate 和 jquery.validate.unobtrusive。

于 2011-07-08T20:55:47.947 回答
-2

jQuery 验证与您的验证机制无关。也许 Microsoft.Ajax.Validation 应该是负责任的。但是要使用 jquery.validation,您应该编写代码。就这样。它不会做任何开箱即用的事情。

于 2011-07-07T09:31:57.060 回答