有没有办法将 RangeValidator 用于大数字(Int64 范围)?
问问题
2753 次
1 回答
3
在看到这之后,仅使用 rangevalidator 就没有干净的方法可以做到这一点。我在下面列出了使用 webforms 验证器的替代方案。
HTML:
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:RangeValidator ID="RangeValidator1" ControlToValidate="TextBox1"
runat="server" ErrorMessage="Help" SetFocusOnError="True" Type="Double"></asp:RangeValidator>
HTML 替代:
你可以在这里使用组合。一个验证它是否在 64 位范围内,另一个验证它只是一个整数。看起来很笨重,但它应该工作。
<asp:RangeValidator ID="RangeValidator1" ControlToValidate="TextBox1"
runat="server" ErrorMessage="Help" SetFocusOnError="True" Type="Double"></asp:RangeValidator>
<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server"
ControlToValidate="TextBox1" ErrorMessage="RegularExpressionValidator"
ValidationExpression="[1-9]\d*"></asp:RegularExpressionValidator>
代码背后:
protected void Page_Load(object sender, EventArgs e) {
this.RangeValidator1.MaximumValue = Int64.MaxValue.ToString();
}
于 2011-04-04T11:48:21.687 回答