1

我在当前项目中使用 MVC3。我只是想用十进制验证来验证我的输入字段。我在使用 JQuery 方面没有太多经验。我的 DB 十进制类型字段是这样的 (decimal(9, 2))。我想根据允许的规范验证用户。

我尝试使用 jquery 的测试方法。但在 IE8 中,当我触发验证检查时会抛出不可用错误。

我找到了正则表达式来做到这一点。但我不知道我应该触发验证检查的文本框的哪个事件。请帮助我为上述声明提供确切的表达方式。

谢谢

4

2 回答 2

0

只需将此行添加到您的项目并从此处下载源代码

<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>

然后进行十进制验证

$.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");
于 2013-02-18T04:39:24.803 回答
0

听说过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>
于 2013-02-18T08:07:28.457 回答