если проверка в поле формы не удалась, установите visible = true в строке таблицы - PullRequest
1 голос
/ 15 апреля 2010

У меня есть строка таблицы с сообщением об ошибке.

<tr runat=server id=trError1>
<td>...</td>
</tr>

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

Могу ли я использовать валидатор asp.net для этого или?

Ответы [ 2 ]

1 голос
/ 15 апреля 2010

Конечно, если вы используете CustomValidator , вы можете указать свой собственный сервер и функцию обратного вызова на стороне клиента, которая может делать практически все что угодно (включая отображение / скрытие строк таблицы).

EDIT Похоже, ваша таблица помечает элементы как видимые или не на стороне сервера, поэтому вам нужно сделать что-то вроде этого:

Разметка

<asp:CustomValidator id="CustomValidator1"
       ControlToValidate="Text1"
       OnServerValidate="ServerValidation"
       runat="server"/>

Код позади

void ServerValidation(object source, ServerValidateEventArgs args)
{
    // your validation code here, 
    //set args.IsValid to true/false

    trError1.Visible = !args.IsValid;
}

Хотя, если вы используете свою таблицу для отображения списка ошибок, вам следует взглянуть на ValidationSummary элемент управления.

0 голосов
/ 15 апреля 2010

Я не так хорошо знаком с элементами управления проверкой, но вы также можете установить сообщение (или видимость) элемента управления с помощью проверки при отправке страницы или нажатии кнопки. Что-то с эффектом

if txtMyBox.text = "" then
   lblMessage.text = "Error.."
end if

Или настройте класс видимости / CSS в этой точке, чтобы сделать вашу метку видимой.

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