我在 ASP.NET 4.5 中使用 RangeValidator 时遇到了一些问题。我面临的问题是试图验证一系列货币价值。
假设我有以下 RangeValidator:
<asp:RangeValidator ID="_rngValCustomAmount" runat="server"
CssClass="error-message" ErrorMessage="Please enter a valid amount."
ControlToValidate="_txtCustomAmount" MinimumValue="10.00"
MaximumValue="500.00" Type="Currency" />
当我输入值“450”时,验证通过,我可以提交表单。但是,如果我输入 '$450' 则验证失败,即使我已将Type
属性设置为Currency
.
所以,然后我想,好吧,也许我需要输入货币最小值和最大值,但是当我将控件更改为:
MinimumValue="$10.00"
MaximumValue="$500.00"
我得到以下 .NET 异常:
'_rngValCustomAmount' 的 MaximumValue 属性的值 '$500.00' 无法转换为类型 'Currency'。
我真的不想为此求助于使用 CustomValidator,这样我就不必为 RangeValidator 支持货币类型而应该存在的东西编写 JS 函数。谁能指出我可能做错了什么?