У меня есть кнопка отправки с помощью расширителя Microsoft ConfirmButton для спросите «Вы уверены?». Однако он срабатывает независимо от того, прошла ли страница проверку на стороне клиента.
<asp:TextBox ID="TextBox1" runat="server" />
<asp:RequiredFieldValidator ID="RequiredFieldValidatorTextBox1"
runat="server"
ControlToValidate="TextBox1"
ErrorMessage="First name is required"
Display="Dynamic" />
...
<asp:Button ID="Button1"
runat="server"
Text="Submit"
CausesValidation="True" />
<ajaxToolkit:ConfirmButtonExtender ID="ConfirmButtonExtenderButton1"
runat="server"
TargetControlID="Button1"
ConfirmText="Are you sure?" />
...
<asp:ValidationSummary id="ValidationSummary1"
runat="server"
ShowMessageBox="True" />
Итак, если пользователь оставляет обязательное поле пустым и нажимает кнопку «Отправить». Она увидит два окна сообщений:
Один для проверки ...
ValidationSummary ShowMessageBox http://img120.imageshack.us/img120/8305/validationzn6.gif < / а>
Потом один для подтверждения ...
ConfirmButtonExtender http://img228.imageshack.us/img228/678/confirmationam3.gif а>
(Примечание: ОК и Отмена просто отменяют.)
Нет смысла отображать подтверждение, если проверка не удалась. Должно быть одно или другое. Как я могу это сделать?
Обновлять:
Если я попытаюсь использовать ConfirmOnFormSubmit, я получаю следующее предупреждение:
Проверка (ASP.Net): атрибут «ConfirmOnFormSubmit» не является допустимым атрибутом элемента «ConfirmButtonExtender».
http://img382.imageshack.us/img382/1391/confirmonformsubmitow3.gif