Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ASP.NET:如何验证_Asp.net_Compare_Validation - Fatal编程技术网

ASP.NET:如何验证

ASP.NET:如何验证,asp.net,compare,validation,Asp.net,Compare,Validation,我有一个带有比较器的简单ASP.NET(VB)页面。我可以检查以确保值是数字,但我不知道如何检查长度(业务规则要求7位数字)。现行守则如下: <asp:TextBox ID="txtPolicyNo" runat="server" BorderStyle="Ridge"></asp:TextBox> <asp:CompareValidator ID="cvCheckPolicy" runat="server"

我有一个带有比较器的简单ASP.NET(VB)页面。我可以检查以确保值是数字,但我不知道如何检查长度(业务规则要求7位数字)。现行守则如下:

<asp:TextBox ID="txtPolicyNo" runat="server" 
                    BorderStyle="Ridge"></asp:TextBox>

<asp:CompareValidator ID="cvCheckPolicy" runat="server" 
                    ErrorMessage="Must be a valid policy number" ControlToValidate="txtPolicyNo" 
                    Type="Integer" Operator="DataTypeCheck">
</asp:CompareValidator>

我怎样才能做到这一点

谢谢


Jason

使用RangeValidator或RegularExpressionValidator

<asp:RangeValidator id="rvCheckPolicy"
   ControlToValidate="txtPolicyNo" 
   MinimumValue="1000000"
   MaximumValue="9999999"
   Type="Integer"
   EnableClientScript="false"
   ErrorMessage="Must be a valid policy number" 
   runat="server"/>

<asp:RegularExpressionValidator id="revCheckPolicy" 
    ControlToValidate="txtPolicyNo" 
    ValidationExpression="\d{7}"
    ErrorMessage="Must be a valid policy number" 
    runat="server"/>


使用带有正则表达式字符串的RegularExpressionValidator,如
“^\d{7}$”
。这将确保你得到一个7位数的数字。您可能必须将其与RequiredFieldValidator相结合,以确保他们输入了内容。

要检查业务规则,通常使用

<asp:CustomValidator ID="CustomValidator1" runat="server" ErrorMessage="invalid text"></asp:CustomValidator>


但是,如果您只想验证7位数字,那么可以将
RegularExpressionValidator
与验证表达式一起使用:
ValidationExpression=^\d{7}$

+1,regex可以用于客户端验证和服务器端验证。它更加一致。