我有一个网络表单(c# asp.net mvc 4),用户可以在其中输入一些数字。这是模型的一部分代码:
[Range(1, Int32.MaxValue)]
public int? MyVariable { get; set; }
但是,当用户输入比 maxint 更多的值时,这一点并没有帮助,例如 '999999999999'。在这种情况下,我在服务器上有一个异常值超过了最大 int。有没有办法验证这种情况?我看到两种方法,但都不喜欢两者:
- 单击提交按钮后,使用 javascript 检查值是否超过 2,147,483,647。如果更多我不提交并显示错误消息。此外,我需要在页面上为其创建 div,当您有 40 个输入时,这不是一个好主意。
- 将我的输入的输入字符数限制为 9 个字符。所以用户不能输入超过 9 位数字并且永远不会超过最大 int 大小。我也不喜欢这个解决方案。
希望有人有更好的。