【发布时间】:2014-05-22 13:14:47
【问题描述】:
我正在使用 jQuery 验证,并且我有以下 html:
<input data-val="true" data-val-number="The field Weight must be a number." data-val-range="The field Weight must be between 1 and 750." data-val-range-max="999" data-val-range-min="0" id="Weight" name="Weight" type="number" value="" />
<span data-valmsg-for="Weight" data-valmsg-replace="true"></span>
这就是我模型上的属性的样子
[Range(1, 750)]
public int? Weight { get; set; }
当我使用 0..999 范围之外的数字时,验证失败,并且我看到了正确的消息。但是,当我使用非数字值(例如 abc)时,表单会通过验证。我在这里做错了什么?
值得注意的是,使用double? 效果很好。同一个模型也有一个可以为空的双重属性,也用Range 属性装饰。此属性呈现完全相同的 html,除了 id 和 name。
【问题讨论】:
标签: jquery html asp.net asp.net-mvc validation