asp:RangeValidator 对 TextBox 中的 textChanged 进行验证

asp:RangeValidator validates on textChanged in TextBox

我有以下 <asp:RangeValidator>

<asp:RangeValidator ID="RangeValidator2" runat="server" ControlToValidate="TextBoxInterestRate" ErrorMessage="Enter value greater than zero!" ForeColor="Red" MaximumValue="100000" MinimumValue="0.10"></asp:RangeValidator>

如果页面是第一次加载,那么 RangeValidator 可以完美运行。但是,我的项目中有一个 Button,单击它会加载具有特定值的 TextBox(始终在 0.1 - 100000 范围内)。现在,如果我从键盘编辑 TextBox 中的值,即使新的 value/edited 值正好在范围内,RangeValidator 也会弹出 ErrorMessage

例如,假设单击 Button 时进入 TextBox 的值是 8.5。现在,如果我将其更改为 10.25,则会弹出 ErrorMessage。我该怎么办?

我正在研究 ASP.NET WebForms。

我在 MSDN RangeValidator Control Documentation 上找到了解决方案。我需要做的就是将 Type = "Double" 添加到语句中,它完美地工作了。

<asp:RangeValidator ID="RangeValidator2" runat="server" ControlToValidate="TextBoxInterestRate" ErrorMessage="Enter value greater than zero!" ForeColor="Red" Type="Double" MaximumValue="100000" MinimumValue="0.10"></asp:RangeValidator>

可用的 DataTypes 是:

Currency, Date, Double, Integer, String