使用带有es-CL Culture的jqueryval修复逗号小数点分隔符

时间:2016-04-21 17:42:27

标签: c# asp.net asp.net-mvc

我正在使用C#MVC5应用程序。我在使用jqueryval时遇到问题,而我的应用程序文化是es-CL。我的班级模型中有这个属性

[Display(Name = "Coeficiente B")]
[RegularExpression(@"^([-]?[\d]+(,[\d]+)?)?$", ErrorMessage = "error")]
[DisplayFormat(DataFormatString = "{0:#.##}")]
public float? coefB { get; set; }

此模型视图中的代码

@Html.EditorFor(model => model.Sensores_Piezometros.coefA)

问题是jqueryval在客户端使我的数据无效,因为它不能将逗号识别为数字的一部分。所以我收到此错误消息El campo Coeficiente B debe ser un número

我认为更改或覆盖jqueryval方法来放置replace(".",",")并不是最好的选择,因为我需要我的应用程序来处理任何文化,而不仅仅是es-CL,而像en-US这样的文化不应该允许逗号为小数分隔符。

编辑:如果我可以为单个属性(coefB)禁用默认的jqueryval验证,那也可以,因为我已经使用我自己的正则表达式进行验证。

0 个答案:

没有答案