0

这是来自 Xbox 帐户详细信息网页的图像。

来自 Xbox 网站的输入框

请注意,在文本框下有一个额外的指令“最大长度 21 个字符”。当输入有效时显示。当条目无效时,此文本将替换为验证消息。

我可以通过在与输入框关联的验证范围中检查“字段验证有效”类来测试控件。

但是什么时候做呢?

如果我处理文本框的keydown事件,我会在验证完成之前收到该事件。所以我的显示落后了 1 个按键。

如果我处理更改的事件,它只会在焦点丢失时触发,而每次按键时都会进行验证。

有什么想法可以在 MVC4 中做到这一点吗?jQuery 不显眼的验证似乎是一个封闭的盒子。

谢谢!

4

1 回答 1

0
  1. 将这些键添加到 web.config。
<appSettings>
        <add key="ClientValidationEnabled" value="true" />
        <add key="UnobtrusiveJavaScriptEnabled" value="true" />
    </appSettings>

然后在您的布局页面中包含这些文件(甚至在 BundleCollection 中包含这些路径)

<script src="../../Scripts/jquery.validate.js" type="text/javascript"></script>

<script src="../../Scripts/jquery.validate.unobtrusive.js" type="text/javascript"> </script>

确保你已经用数据注释修饰了你的模型,例如:

public class someClass
{
   [Required]
   [StringLength(40)]
   public string username{get;set;}
}
于 2013-05-06T12:56:46.490 回答