使用EditorFor允许1到100之间的数字

时间:2012-10-23 19:03:49

标签: c# asp.net-mvc-3

我尝试使用以下RegEx注释,但它不起作用:

[RegularExpression(@"([0-9]|[0-9]\d|100)$"]

this回答表明这是一种糟糕的做法)

我也尝试过使用maskedInput 1.2.2(jQuery),但它不接受任何单个数字值

jQuery(function ($) {
    $("#MyControl").mask("99"); //also tried "9?9"
});

是否有可能让面具仅接受1到100的值?

2 个答案:

答案 0 :(得分:8)

查看RangeAttribute

答案 1 :(得分:1)

简答题是“否”,因为整数1-100(1,01,001,0001等等)的无限表示都是数字1的有效表示。

您可以将数据输入限制为规范表示(1-9,11-99,100),如下所示:

(100|([1-9][0-9])|[1-9]

这应该可以解决问题。