我使用以下代码在 Asp.Net MVC 3 应用程序中生成数据验证 javascript
[DisplayName("Latitude Degrees")]
[Range(0, 90, ErrorMessage = "Latitude degrees must be between {1} and {2}")]
public Int32? LatitudeDegrees { get; set; }
在 View 模型上。当它是 MVC2 时,这工作得很好,如果我在文本框中输入 0-90 之外的值,我会收到验证警告。
自从我将应用程序移至 MVC 3 以来,每当我将任何值放入文本框中(无论合法还是非法)时,我都会在其旁边出现验证错误。
我已将 EnableClientValidation 设置为 true,并且 UseUnobtrusiveJavascript 已关闭(web.config 或 View 中没有任何内容可将其打开)。
最佳答案
如果您希望在 Web 配置中进行不显眼的客户端验证,请尝试将 ClientValidationEnabled
和 UnobtrusiveJavaScriptEnabled
设置为 true。然后确保您已删除 MicrosoftAjax*
客户端脚本库的所有痕迹,并包含 jquery 和 jquery.validate,因为这就是 MVC 3 使用的内容:
<script src="@Url.Content("~/Scripts/jquery.validate.js")" type="text/javascript"> </script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.js")" type="text/javascript"></script>
关于asp.net-mvc-3 - 范围验证在 MVC3 中无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5143831/