Отображение сообщения «Пожалуйста, подождите», а не в случае ошибки при проверке - PullRequest
1 голос
/ 16 апреля 2010

У меня есть форма, которая отправляется на адрес электронной почты, когда пользователь нажимает кнопку Отправить. Форма проверяется в первую очередь. Я хочу показать пользователю текст «Пожалуйста, подождите», когда он нажимает кнопку. Теперь текст «Пожалуйста, подождите» показывает нормально, если поля формы верны и форма отправлена ​​нормально. Но если в полях формы есть ошибка, текст «Пожалуйста, подождите» все равно отображается, и я не хочу этого.

Сейчас я использую JavaScript, вот скрипт:

<script language="javascript" type="text/javascript">
    function showPleaseWait()
    {
        document.getElementById('PleaseWait').style.display = 'block';
    }
</script>

Вот кнопка «Отправить» (использует onMouseDown) и раздел «PleaseWait» (который показан):

<asp:Button ID="btnSend" runat="server" Text="Send Order" Enabled="true" ValidationGroup="Validate" onMouseDown="showPleaseWait()" CausesValidation="false" />

<div id="PleaseWait" style="display: none;">Sending, please wait.</div>

Я пытаюсь сначала пройти проверку и, если она прошла нормально, показать текст «Пожалуйста, подождите». Это не сработает, если я попытаюсь показать div PleaseWait в начале btnSend. Как мне это сделать?

Большое спасибо за вашу помощь!

Ответы [ 2 ]

2 голосов
/ 16 апреля 2010

Вызовите Page_ClientValidate (). Возвращает true, если страница была действительной. Если вы используете ASP.NET 2.0, передайте имя группы проверки в качестве параметра (Page_ClientValidate ("") будет обрабатывать, когда нет имени группы.)

0 голосов
/ 16 апреля 2010

Steav является правильным в утверждении. Однако, если вы используете ASP.NET AJAX, вы можете использовать элемент управления UpdateProgress в качестве альтернативы «ручному переключению» ваших предупреждений «подождите».

...