Проверка на стороне клиента для различных событий управления - PullRequest
2 голосов
/ 27 августа 2009

У меня есть пользовательский валидатор, прикрепленный к элементу управления textbox следующим образом

<td align="center" width="10px">
  <asp:CustomValidator ID="validateDateText" ControlToValidate="dateTextBox" 
       runat="server" OnServerValidate="ValidateDate" 
       ClientValidationFunction="Validate_Date" EnableClientScript="true" 
       Width="10px" CssClass="errortext" Text="*" Font-Size="Medium" Font-Bold="true" />
</td>
<td align="center" width="80px">
  <asp:Textbox ID="dateTextBox" MaxLength="100" runat="server"  
       CssClass="dateselectortextbox" style="margin-right: 3px;" />
</td>

Когда я щелкаю кнопку на странице, при которой установлено: validvalidation = "true", клиентский сценарий запускается, и сводная информация о проверке отражает сообщение об ошибке, а средство проверки показывает *

Однако, когда я щелкаю из текстового поля, только валидатор отображает *, контрольная сумма не обновляется

Проверка на стороне клиента работает, так как серверный код не вызывается, я просто пытаюсь выяснить, почему валидация не обновляется при событии onblur

Есть идеи?

EDIT:

ErrorMessage устанавливается в коде для валидатора

Я добавил EnableClientScript в мою контрольную сумму

Я добавил ValidationGroup в мою контрольную сумму, настраиваемый валидатор, текстовое поле и кнопку, но сводка проверки обновляется для нажатия кнопки, но не для события onblur текстового поля

Ответы [ 3 ]

3 голосов
/ 27 августа 2009

Вам обязательно нужно использовать errormessage = "xyz", чтобы сообщение отображалось в сводке проверки. Группа проверки не должна иметь значения, если у вас не более одной группы проверяемых элементов управления.

Здесь - это ссылка на другой пост, который может помочь вам получить резюме проверки для обновления после onblur.

0 голосов
/ 27 августа 2009

Я думаю, что вы можете использовать ErrorMessage = "Некоторые информативные сообщения об ошибках" внутри вашего CustomValidator. Вам также необходимо установить ValidationGroup = "SomeGroupName" для CustomValidator, элемента управления ValidationSummary, а также элемента управления, вызывающего обратную передачу.

0 голосов
/ 27 августа 2009

Вам необходимо установить dateTextBox.ValidationGroup, validateDateText.ValidationGroup и yourValidationSummary.ValidationGroup на одно и то же значение.

См. http://msmvps.com/blogs/brianmadsen/pages/ASP.Net-2.0-_2D00_-How-to-use-the-new-validation-features_2C00_-part-1.aspx.

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