Сторона сервера обязательной проверки полей

Я планирую запустить требуемую проверку поля в моем событии нажатия кнопки.

<asp:RequiredFieldValidator ID="RequiredFieldValidator10"  runat="server" 
    ControlToValidate="RadDatePicker3" OnLoad="RequiredFieldValidator10_Load"
    Display="Dynamic" ForeColor="Red">*</asp:RequiredFieldValidator>


 protected void RequiredFieldValidator10_Load(object sender, EventArgs e)
    {
        if (IsPostBack)
        {
            if (RadDatePicker4.DbSelectedDate == null || RadDatePicker3.DbSelectedDate == null)
            {
                RequiredFieldValidator10.ErrorMessage = "*";
                RequiredFieldValidator11.ErrorMessage = "*";
            }
        }
    }

На моей кнопке нажмите "Я хочу проверить правильность поля ... какие-либо предложения?"

Приведенный выше код у меня не работает.


person user1046415    schedule 22.03.2013    source источник
comment
Используйте CustomValidator с событием OnServerValidate и установите .IsValid на True или false после проверки значений, и это автоматически отобразит сообщение об ошибке.   -  person rs.    schedule 23.03.2013


Ответы (2)


Вы должны просто иметь возможность вызвать следующее в событии нажатия кнопки

RequiredFieldValidator10.Validate();
RequiredFieldValidator10.IsValid;

Первый метод запускает валидатор, второй получает результат.

person Smeegs    schedule 22.03.2013
comment
Да, это так, raddatepicker расширил все свои свойства проверки для requiredfieldvalidator. Например. Если дата не входит в диапазон, установленный в raddatepicker, запускается requiredfieldvalidator. Вот демонстрация с веб-сайта Telerik, в которой используются демонстрации валидатора. .telerik.com / aspnet-ajax / calendar / examples / datepicker /. - person Smeegs; 24.03.2013
comment
Я не могу вызвать RequiredFieldValidator10.IsValid; метод при нажатии кнопки .... выдает ошибку .. мне нужно какое-либо пространство имен ?? - person user1046415; 25.03.2013

Когда вы используете валидаторы для настраиваемых элементов управления, вам необходимо указать атрибут validationproperty, чтобы указать свойство, которое будет содержать значение элемента управления. Одним из способов в этом случае было бы расширение radcontrol и в этом классе реализовать свойство, для которого Атрибут validationproperty будет указывать на. Свойство должно брать свое значение из базового класса. P.s. Пожалуйста, дайте мне знать, если требуются более подробные сведения или образец.

person Atti    schedule 23.03.2013