Как использовать один и тот же элемент управления проверкой для более чем одного элемента управления веб-формой

#asp.net

#asp.net

Вопрос:

Я предлагаю пользователю ввести дату. Для этого я предоставил три выпадающих списка, теперь я хочу, чтобы для трех выпадающих списков для дня, месяца и года использовался только один обязательный валидатор полей.

Ответ №1:

Свойство «ControlToValidate» не позволяет вам устанавливать несколько элементов управления. Вам следует написать свой собственный валидатор, например, с помощью JS.

Ответ №2:

Попробуйте, не предоставляя никакого контроллера как ControlToValidate , а предоставляя свой собственный ClientValidationFunction

 <asp:CustomValidator id="AtLeastOneContact" runat="server"  
  ErrorMessage="Phone or Email Required" 
  Display="Dynamic"
  OnServerValidate="AtLeastOneContact_ServerValidate" 
  ClientValidationFunction="AtLeastOneContact_ClientValidate" />
  

Проверка на стороне клиента

 <script type="text/vbscript" language="vbscript">
<!--
    Sub AtLeastOneContact_ClientValidate(source, args)
        'Requires that either Phone or Email is not empty

        If document.getElementById("<%= Phone.ClientID %>").value amp; _
           document.getElementById("<%= Email.ClientID %>").value <> "" Then
            args.IsValid = true
        Else
            args.IsValid = false
        End If
    End Sub
'-->
</script>
  

проверьте это для получения дополнительной информации.