If it's stupid but works, it isn't stupid.
Форма



Контрол для кнопки Save



/*Выводит содержимое текстовых полей в метке Label

Валидация текстовых полей

К текстовому полю ID="txtFirstName" подключаем валидатор RequiredFieldValidator (Toolbox -- Validation) - проверяет, введено ли значение в текстовое поле
В свойствах валидатора задаем
ControlToValidate - id поля, которое проверяем
ErrorMesssage - текст сообщения об ошибке

Валидация Email

В дополнение к RequiredFieldValidator добавляется проверка на корректность введенного email адреса при помощи RegularExpressionValidator
Аналогичным образом выбираем
ControlToValidate - поле, которое проверяем
ErrorMesssage - Email введен некорректно
+ заполняем поле
ValidationExpression -- там есть набор предустановленных выражений -- выбираем выражение Internet e-mail adress и получаем соответствующее регулярное выражение.

Сообщаем серверу, что на форме есть валидация.

Добавляем в контрол кнопки Save
if (!Page.IsValid) return;

/*Если страница не валидна, то дальнейшее выполнение обработчика прекращается.



Валидация формы с большим количеством полей

Контрол ValidationSummary
Перед полями формы, но внутри серверной формы runat="server" вставляем тег


Свойство валидатора
Display
------------ Static (всегда занимает место на странице)
------------ Dinamic (если он не отображается, то не занимает место, и все валидаторы, которые идут за ним, занимают его место)

Text Сообщение, которое выводится непосредственно рядом с валидируемым текстовым полем

DisplayMode - определяет вид, в котором выводятся ошибки - список, список с буллитами, в одну строку.

CssClass - добавить свой класс и определить внешний вид.

ShowMessageBox true/false - всплывающее окно (js функция alert), в котором отображаются ошибки.

ShowSummary true/false - выводить список ошибок/нет

Другие валидаторы

RangeValidator - числовое значение в заданном диапазоне

CustomValidator - собственное правило валидации (например, проверяем, если ли введенный email в базе данных)
ErrorMessage Указанный email уже существует
ControlToValidate txtEmail

Создаем метод в Default.aspx.cs
/*Условный пример*/



Курсы по asp.net от intuit.ru часть №3

@темы: Валидация формы, Курсы по asp.net от intuit.ru, ASP.NET, Ссылки