【发布时间】:2011-08-04 21:41:10
【问题描述】:
我的一个视图模型有一个属性 GramWeight,定义为
[Display(Name="Gram Weight")]
[RegularExpression(@"[0-9]*\.?[0-9]+", ErrorMessage = "Gram Weight must be a Number.")]
[Range(0, 9999.99, ErrorMessage = "Value must be between 0 - 9,999.99")]
public decimal? GramWeight { get; set; }
当用户输入带前导小数点的值时,此字段的验证失败,例如 0.23 而不是 0.23。如果用户将 0 添加到前面,则验证通过。我曾认为这是我的正则表达式的问题,但我在http://regexhero.net/tester/ 上运行了一些测试,它似乎工作得很好。
那么,如果它不是正则表达式,是不是别的?如果用户不这样做,我将准备使用 javascript 为用户附加一个 0。这是我最后的选择,但我正在考虑。
【问题讨论】:
标签: regex asp.net-mvc-3 validation jquery-validate