我尝试指定范围从4到13.但它保持错误“MaximumValue 13不能小于RangeValidator1的MinimumValue 4。”我该怎么解决这个问题。这是我的代码:
<asp:TextBox ID="TextBox2" runat="server" ValidationGroup="Group1"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server"
ControlToValidate="TextBox2" ErrorMessage="กรุณากรอก Password" ForeColor="Red"
ValidationGroup="Group1">*</asp:RequiredFieldValidator>
<asp:RangeValidator ID="RangeValidator1" runat="server"
ControlToValidate="TextBox2"
ErrorMessage="Password ต้องมีความยาวตั้งแต่ 4-13 ตัวอักษร" ForeColor="Red"
MaximumValue="13" MinimumValue="4" Type="String" EnableClientScript="false">*</asp:RangeValidator>
这是Button中的代码:
protected void Button2_Click1(object sender, EventArgs e)
{
try
{
if (Page.IsValid)
{
}
else
{
Insert();
}
}
catch (Exception ex)
{
}
}
任何帮助表示感谢。
答案 0 :(得分:2)
在对整数类型值使用RangeValidator时设置类型Integer
。
<asp:RangeValidator ID="RangeValidator1" runat="server"
ControlToValidate="TextBox2"
ErrorMessage="Password ต้องมีความยาวตั้งแต่ 4-13 ตัวอักษร" ForeColor="Red"
MaximumValue="13" MinimumValue="4" Type="Integer" EnableClientScript="false">*</asp:RangeValidator>
但我很惊讶您使用带有密码字段的RangeValidator。在这种情况下,您限制用户将值放在4-13
之间。
您可能想检查输入的长度。为此,您使用正则表达式验证器。
<asp:RegularExpressionValidator ID="RegexVal" ValidationExpression="^.{4,13}$" runat="server" ErrorMessage="Password must be 4-13 character long" ControlToValidate="TextBox2" />
答案 1 :(得分:1)
Type应该是Integer而不是String
<asp:RangeValidator ID="RangeValidator1" runat="server"
ControlToValidate="TextBox2"
ErrorMessage="Password ต้องมีความยาวตั้งแต่ 4-13 ตัวอักษร" ForeColor="Red"
MaximumValue="13" MinimumValue="4" Type="Integer" EnableClientScript="false">*
</asp:RangeValidator>
Google翻译了以下错误消息。 密码必须包含4-13个字符。
PashaPash的回答https://stackoverflow.com/a/21060857/263003是正确的
答案 2 :(得分:1)
当前要检查的指定数据类型设置为字符串。 “4”大于“13”,这就是你得到这样一个错误的原因。将控件中的Type参数更改为Integer,它应该可以工作。
答案 3 :(得分:1)
RangeValidator验证控件的值,而不是值长度。对于字符串比较,“13”小于“4”,因此您得到“max&lt; min”错误。
您应该使用RegularExpressionValidator来检查输入长度:
<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server"
ControlToValidate="TextBox2"
ErrorMessage="Password ต้องมีความยาวตั้งแต่ 4-13 ตัวอักษร" ForeColor="Red"
ValidationExpression="^.{4,13}$" ValidationGroup="Group1" EnableClientScript="false">*</asp:RegularExpressionValidator>