我在我当前的项目中使用MVC3。我只想用十进制验证来验证我的输入字段。我在使用JQuery方面没有太多经验。我的DB十进制类型字段是这样的(十进制(9,2))。我想根据允许的规范验证用户。
我尝试使用jquery的测试方法。但是在IE8中,当我触发验证检查时抛出不可用的错误。
我找到了正则表达式来做到这一点。但我不知道文本框的哪个事件我应该触发验证检查。请帮我提供上述声明的确切表达。
由于
答案 0 :(得分:0)
只需将此行添加到您的项目中,然后从here
下载源代码<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
然后是十进制validatoin
$.validator.addMethod('Decimal', function(value, element) {
return this.optional(element) || /^\d+(\.\d{0,3})?$/.test(value);
}, "Please enter a correct number, format xxxx.xxx");
或允许使用逗号:
$.validator.addMethod('Decimal', function(value, element) {
return this.optional(element) || /^[0-9,]+(\.\d{0,3})?$/.test(value);
}, "Please enter a correct number, format xxxx.xxx");
答案 1 :(得分:0)
听说Data Annotations in ASP.NET MVC?
使用此
[RegularExpression(@"^[0-9,]+(\.\d{0,3})?$")]
public decimal UnitPrice { get; set; }
然后使用此
<p>
<label for="UnitPrice">Price:</label>
@Html.TextBox("UnitPrice")
@Html.ValidationMessage("UnitPrice", "*")
</p>