Проблема выравнивания валидаторов ASP.NET - PullRequest
6 голосов
/ 11 мая 2010

Я занимаюсь разработкой веб-страницы contactus, в которой есть поле ввода под названием Email. Он проверяется на соответствие обязательного поля валидатора и валидатора регулярного выражения с соответствующими сообщениями.

Обязательно: введите адрес электронной почты Регулярное выражение: неверный адрес электронной почты

Я устанавливаю эти два, как указано ниже:

<asp:TextBox ID="txtEmail" runat="server"></asp:TextBox>
                                    <font color="#FF0000">*</font>
                                    <asp:RequiredFieldValidator ID="rfvemail" CssClass="error_text" ControlToValidate="txtEmail"
                                        runat="server" ErrorMessage="Enter email address."></asp:RequiredFieldValidator>
                                         <asp:RegularExpressionValidator ID="revemail" runat="server" ControlToValidate="txtEmail"
                                            ErrorMessage="Invalid Email" ValidationExpression="\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"></asp:RegularExpressionValidator>

Моя проблема заключается в том, что как Enter Email, так и Invalid Email занимают свое собственное место. Например: если я оставляю сообщение как пустое место и нажимаю «Отправить», рядом с ним отображается «Введите адрес электронной почты». Если я ввожу недопустимый адрес электронной почты (xxx), Ввод адреса электронной почты отключен, но занимает пробел, после того, как «Ввод адреса электронной почты» ранее был введен, введите сообщение «Недопустимый адрес электронной почты».

Есть ли способ убрать это место ??

Махеш

Ответы [ 3 ]

5 голосов
/ 11 мая 2010

Установить отображение = "Динамический" на нем.

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.basevalidator.display%28v=VS.100%29.aspx

4 голосов
/ 11 мая 2010

Использование Diplay = "Dynamic"

Поведение отображения для элемента управления валидацией. Допустимые значения:

  • Нет (элемент управления не отображается. Используется для отображения сообщения об ошибке только в ValidationSummary control)
  • Статический (элемент управления отображает сообщение об ошибке, если проверка не пройдена. Пробел Зарезервировано на странице для сообщения, даже если входные данные проходят проверку.
  • Динамический (элемент управления отображает сообщение об ошибке, если проверка не пройдена. Пробел не зарезервировано на странице для сообщения, если вход проходит проверку
2 голосов
/ 11 мая 2010

Если я правильно понимаю вопрос, я думаю, что ответ состоит в том, чтобы установить для свойства Display значение Dynamic.

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

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