我正在使用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验证,那也可以,因为我已经使用我自己的正则表达式进行验证。