ASP.NET: как проверить - PullRequest
1 голос
/ 02 июня 2011

У меня есть простая страница ASP.NET (VB) с CompareValidator.Я могу проверить, чтобы убедиться, что значение является числовым, но я не знаю, как проверить длину (бизнес-правила требуют 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>

Как мне это сделать?

Спасибо,

Джейсон

Ответы [ 3 ]

1 голос
/ 02 июня 2011

Используйте RegularExpressionValidator со строкой регулярного выражения, например "^\d{7}$". Это гарантирует, что вы получите 7-значный номер. Возможно, вам придется объединить это с RequiredFieldValidator, чтобы убедиться, что они вводят что-то .

1 голос
/ 02 июня 2011

Для проверки бизнес-правил обычно используется CustomValidator .

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

Но если вы хотите проверить только 7 цифр, вы можете использовать RegularExpressionValidator с выражением проверки: ValidationExpression=^\d{7}$

0 голосов
/ 02 июня 2011

Использовать 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"/>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...