У меня есть стандартная веб-страница ASP.NET 2.0 с кнопкой «Удалить». Что мне нужно, и я не могу понять, как это сделать, - когда пользователь нажимает кнопку удаления, появляется диалоговое окно подтверждения, спрашивающее пользователя: «Вы уверены?». Если пользователь говорит «да», то я хочу отключить кнопку удаления и выполнить обратную передачу, которая запустит код на стороне сервера deleteButton_Click.
Вот тег:
<asp:Button ID="deleteButton" Text="Delete" OnClick="deleteButton_Click" runat="server" />
Вот javascript (в jquery) для обработки кликов на стороне клиента:
var deleteButton = $(input.eq(0));
deleteButton.click( function()
{
var a = confirm( "Are you sure you want to delete this item?" );
if ( a == false )
{
return false;
}
else
{
deleteButton.attr( "disabled", "disabled" );
__doPostBack( deleteButton.attr( "id" ), "" );
}
} );
Диалог подтверждения работает, как и ожидалось, и отключение тоже работает нормально. Форма прекрасно выполняет обратную передачу, но не запускает обработчик события deleteButton_Click. На странице существует код JavaScript __doPostBack.
Я мог бы добавить UseSubmitBehavior = "false" к тегу deleteButton, но тогда он проигнорировал бы ответ диалога подтверждения.
Так что, может быть, я слишком много спрашиваю об ASP.NET здесь. Есть идеи, как сделать эту работу?
Спасибо
Craig