Проверка трех текстовых полей, включая номер телефона - PullRequest
1 голос
/ 14 мая 2011

Как добавить проверку ASP.NET в C #, все три текстовых поля не пусты, а номер телефона имеет формат DDDD-DDDD, где D - от 0 до 9?

<asp:TextBox ID="txtFirstName" runat="server"></asp:TextBox>
<asp:TextBox ID="txtLastName" runat="server"></asp:TextBox>
<asp:TextBox ID="txtPhoneNumber" runat="server"></asp:TextBox>

Ответы [ 3 ]

0 голосов
/ 14 мая 2011

Разметка:

<table>
<tr>
<td><asp:TextBox ID="txtFirstName" runat="server" /></td>
<td><asp:RequiredFieldValidator runat="server" ControlToValidate="txtFirstName" Display="Dynamic" ValidationGroup="group"></asp:RequiredFieldValidator></td>
<td><asp:RegularExpressionValidator runat="server" ControlToValidate="txtFirstName" ValidationExpression="..." Display="Dynamic" ValidationGroup="group">*</asp:RegularExpressionValidator></td>
</tr>
<!-- do the same 2 times more -->
</table>

RegEx должно быть, я думаю:

^\d{4,4}-\d{4,4}$

или (если вы не хотите делать переменное числоцифры, например от 2 до 4):

^\d\d\d\d-\d\d\d\d$

что означает:

line begin
4 digits, not more or less
dash
4 digits, not more or less
line end
0 голосов
/ 14 мая 2011

Вы пытались решить эту проблему самостоятельно? Документацию легко найти:

http://msdn.microsoft.com/en-us/library/aa479013.aspx

Вам необходимо использовать обязательный валидатор поля - что-то вроде этого:

 <asp:RequiredFieldValidator 
         id="RequiredFieldValidator1" runat="server" 
         ErrorMessage="Required!" 
         ControlToValidate="txtFirstName">

Вам также понадобится валидатор регулярных выражений, например:

<asp:RegularExpressionValidator id="RegularExpressionValidator1" 
   runat="server" ControlToValidate="txtPhoneNumber" 
    ErrorMessage="wrong!" 
    ValidationExpression="^\d\d\d\d-\d\d\d\d$">
</asp:RegularExpressionValidator>

NB. Инструментарий для выражения reg имеет много встроенных, включая большинство форматов телефонных номеров. Я бы просто использовал один из них.

editor

0 голосов
/ 14 мая 2011

Используйте RequiredFieldValidator и ReguralExpressionValidator элементы управления.

Серверный элемент управления RequiredFieldValidator гарантирует, что пользователь вводит что-то в поле, с которым он связан в форме. Вам необходимо связать RequiredFieldValidator с каждым элементом управления, который является обязательным полем в форме.

Серверный элемент управления RegularExpressionValidator является элементом проверки, который позволяет проверять ввод пользователя на основе шаблона, определенного регулярным выражением.


См .:

Проверка серверных элементов управления ASP.NET

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...