Контроль валидации не препятствует отправке PostBack-запроса на сервер. - PullRequest
1 голос
/ 19 апреля 2011

У меня большая веб-страница, среди прочего есть TextBox и RequiredRangeValidator.

<asp:textbox id="tbNewSvrLic" runat="server" Text="0" BackColor="#FFFFA0" />

<asp:RangeValidator id="NewSvrLicValidator" ControlToValidate="tbNewSvrLic"
    runat="server" Type="Integer" MinimumValue="0"  MaximumValue="5"
    errormessage="Invalid value specified for Additional Server Licenses"
    Display="Dynamic"  />

<asp:button id="btnOrderSummary" OnClick="btnOrderSummary_Click"
    runat="server" text="Display" Visible="False" />

Эти элементы управления не видны, когда страница загружается 1 раз, но становятся видимыми после того, как пользователь выполнит некоторые действия на странице и отправит некоторые данные на сервер (там статус Visible будет изменен на true).

Когда недопустимые данные (например, значение 10) вводятся в элемент управления 'tbNewSvrLic', отображается требуемое сообщение об ошибке, но кнопка «Дисплей» по-прежнему активна и выполняет запрос на обратную передачу на сервер.

Веб-сайт работает под .NET 4.0, очень похожая функциональность реализована для .NET 3.5, но работает как положено ...

Пожалуйста, сообщите. Любые мысли приветствуются.

P.S. Вероятно, мне нужно упомянуть, что сообщение об ошибке (на элементах проверки) отображается черным, а не красным, как обычно ...

1 Ответ

0 голосов
/ 19 апреля 2011

Можете ли вы попробовать использовать ValidationGroups, как указано здесь ?

...