asp.net mvc 中关于验证问题data-val-number="The field 部门号 must be a number
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了asp.net mvc 中关于验证问题data-val-number="The field 部门号 must be a number相关的知识,希望对你有一定的参考价值。
<input data-val="true" data-val-number="The field 部门号 must be a number." data-val-required="部门号 字段是必需的。" id="DepartmentID" name="DepartmentID" type="hidden" value="1" />
请问"data-val-number="The field 部门号 must be a number." 是哪个文件中生成来的?如何修改成" data-val-number="部门号必须是个数字."
我的意思是:验证的提示字符在哪个文件里.
正确的做法是在字段上增加RegularExpression特性,并指定ErrorMessage。
比如
[RegularExpression(@"\d+", ErrorMessage="部门号必须是个数字")]
public int DepartmentID get; set; 参考技术A 这个是默认的,System.ComponentModel.DataAnnotations里面的Required特性。
如果需要更改提示信息,给Required指定ErrorMessage就行了
比如
[Required]
public int ExtractionRequireNumber get; set;
改成
[Required(ErrorMessage = "自定义提示信息")]
public int ExtractionRequireNumber get; set; 追问
我想知道是 Unobtrusive javascript in ASP.NET MVC 3 里实现的么?
怎么实现的啊.如何修改?
我想知道是 Unobtrusive JavaScript in ASP.NET MVC 3 里实现的么?
怎么实现的啊.如何修改?
不是的啊!我们用的是VS2005,可能不是你要的答案吧!
追问哦.我用的是visual studio 2010 asp.net mvc 3
ASP .NET MVC5 中的 CORS
【中文标题】ASP .NET MVC5 中的 CORS【英文标题】:CORS in ASP .NET MVC5 【发布时间】:2015-01-28 20:37:12 【问题描述】:我有一个 MVC 项目,其中有几个我想公开跨域的 JSON 控制器方法。不是整个网站,只有这两种方法。
我基本上想要这篇文章中关于 cors 的确切内容:
http://enable-cors.org/server_aspnet.html
但是,问题是我有一个常规的 MVC 项目,而不是一个 WEB API,这意味着我无法按照注册的步骤进行操作
public static void Register(HttpConfiguration config)
// New code
config.EnableCors();
方法,因为它不在我的 MVC 项目中。
虽然它是一个 MVC 项目,但有没有办法使用这个库?
我知道我可以通过 web.config 使用:
<httpProtocol>
<customHeaders>
<clear />
<add name="Access-Control-Allow-Origin" value="http://www.domain.com" />
</customHeaders>
</httpProtocol>
但我不想公开所有方法,我想指定多个域(2 个域)来访问我的方法...
【问题讨论】:
Setting Access-Control-Allow-Origin in ASP.Net MVC - simplest possible method的可能重复 是的,我已经看到了,但这基本上与添加如此处所述:Setting Access-Control-Allow-Origin in ASP.Net MVC - simplest possible method
您应该只创建一个操作过滤器并在那里设置标题。您可以在任何您想要的操作方法上使用此操作过滤器。
public class AllowCrossSiteJsonAttribute : ActionFilterAttribute
public override void OnActionExecuting(ActionExecutingContext filterContext)
filterContext.RequestContext.HttpContext.Response.AddHeader("Access-Control-Allow-Origin", "*");
base.OnActionExecuting(filterContext);
如果你想添加多个域,你不能只是多次设置标题。在您的操作过滤器中,您需要检查请求域是否来自您的域列表,然后设置标题。
public override void OnActionExecuting(ActionExecutingContext filterContext)
var domains = new List<string> "domain2.com", "domain1.com";
if (domains.Contains(filterContext.RequestContext.HttpContext.Request.UrlReferrer.Host))
filterContext.RequestContext.HttpContext.Response.AddHeader("Access-Control-Allow-Origin", "*");
base.OnActionExecuting(filterContext);
【讨论】:
Tjis 很有用,因为这样我就可以将它限制为仅用于我想要公开的方法,但是,我想允许两个不同的域..不是全部 (*) 而不仅仅是一个 (www.domain .com) 我可以为来源添加多个标题吗?例如:filterContext.RequestContext.HttpContext.Response.AddHeader("Access-Control-Allow-Origin", "domain1.com"); filterContext.RequestContext.HttpContext.Response.AddHeader("Access-Control-Allow-Origin", "domain2.com"); @user4309587 你不能从Request
获取域然后有条件地添加正确的标头值吗?
很好的答案!非常感谢你……我的代表不允许我给你投票……:(
这样进行域检查... if (!String.IsNullOrEmpty(domains.FirstOrDefault(s => s.Contains(filterContext.RequestContext.HttpContext.Request.UrlReferrer.Host)))) / /(filterContext.RequestContext.HttpContext.Request.UrlReferrer.Host))
不适用于 Chrome/Firefox 获得 302... 见 ***.com/questions/35309831/…以上是关于asp.net mvc 中关于验证问题data-val-number="The field 部门号 must be a number的主要内容,如果未能解决你的问题,请参考以下文章
asp.net mvc源码分析-ModelValidatorProviders 客户端的验证
将 Twitter 引导验证样式和消息应用于 ASP.NET MVC 验证
在Visual Studio 2010中关于asp.net的验证码登录调试时界面出现乱码怎么回事?急!!!