MVC3客户端服务器验证消息不匹配

时间:2011-04-26 09:42:12

标签: validation asp.net-mvc-3

我根据验证发生的位置获得相同错误的不同错误消息。踢球者是服务器正在生成两个消息,因此它与jquery无关。

使用以下模型:

public class MyModel
{
    public int MyNumber { get; set; }
}

使用客户端验证和无效值时,错误消息为:

  

字段MyNumber必须是数字。

使用服务器验证时,错误消息为:

  

值'x'对MyNumber无效。

客户端上禁用javascript后,服务器实际生成两条消息,但仅显示服务器一条:

<input class="input-validation-error text-box single-line" data-val="true" data-val-number="The field MyNumber must be a number." data-val-required="The MyNumber field is required." id="MyNumber" name="MyNumber" type="text" value="x" />
<span class="field-validation-error" data-valmsg-for="MyNumber" data-valmsg-replace="true">The value &#39;x&#39; is not valid for MyNumber.</span>

我的问题是:

  1. 为什么他们不一样?
  2. 如何更改它们?
  3. 编辑:在此处找到了部分解释和黑客攻击:http://forums.asp.net/p/1512140/3608427.aspx

1 个答案:

答案 0 :(得分:0)

我不确定他们为什么会有所不同。但是要为客户端和服务器端验证自定义错误消息,可以使用数据注释。 ASP.NET上的数据注释有a tutorial