Практическое руководство. Проверка значений серверных элементов управления ASP.NET на предмет соответствия шаблону

Visual Studio 2010

Обновлен: Ноябрь 2007

Можно проверить, соответствует ли пользовательская запись предварительно определенному шаблону, например шаблону телефона, почтового индекса, адреса электронной почты и т. п. Для этого применяется регулярное выражение. Дополнительные сведения о регулярных выражениях см. в разделе Регулярные выражения .NET Framework.

6xh899wy.alert_security(ru-ru,VS.100).gifПримечание о безопасности.

По умолчанию веб-страницы ASP.NET автоматически выполняют проверку на предмет попыток несанкционированной отправки в приложение сценариев или элементов HTML. Дополнительные сведения см. в разделе Общие сведения об использовании сценариев.

Порядок проверки с помощью сравнения с регулярном выражением

  1. Добавьте на страницу элемент управления RegularExpressionValidator и задайте следующие свойства:

    Свойство

    Описание

    ControlToValidate

    Идентификатор проверяемого элемента управления.

    ErrorMessage, Text, Display

    В этих свойствах указывается текст и расположение ошибок, которые будут отображаться при неудачном завершении проверки. Дополнительные сведения см. в разделе Практическое руководство. Управление отображением сообщений об ошибках проверки для серверных элементов управления ASP.NET.

  2. Укажите шаблон для сравнения путем задания свойству ValidationExpression регулярного выражения.

    6xh899wy.alert_note(ru-ru,VS.100).gifПримечание.

    Если используется визуальный конструктор, например Visual Studio .NET 2005, можно выбрать один из предварительно определенных шаблонов, заданных в элементе управления RegularExpressionValidator.

    Чтобы разрешить несколько допустимых шаблонов, разделите выражения с помощью знака черты (|).

    6xh899wy.alert_note(ru-ru,VS.100).gifПримечание.

    При проверке на стороне клиента регулярные выражения вычисляются с помощью ECMAScript (JavaScript). Это слегка отличается от проверки регулярных выражений на стороне сервера.

  3. Добавьте проверку в код веб-страницы ASP.NET для проверки на допустимость вводимого значения. Дополнительные сведения см. в разделе Практическое руководство. Программная проверка допустимости значений серверных элементов управления ASP.NET.

    В следующем примере показано использование элемента управления RegularExpressionValidator для проверки допустимости почтового индекса США, введенного пользователем. Проверяющий элемент управления выполняет проверку для двух шаблонов: пять цифр, пять цифр плюс дефис плюс еще четыре цифры.

    ZIP: <asp:TextBox id="txtZIP" runat="SERVER"></asp:TextBox>
         <asp:RegularExpressionValidator 
           id="txtZIP_validation" runat="SERVER" 
           ControlToValidate="txtZIP" 
           ErrorMessage="Enter a valid US ZIP code."
           ValidationExpression="\d{5}(-\d{4})?">
         </asp:RegularExpressionValidator>
    
    
    
Показ: