ASP.NET/jQuery Post-Back, но не при использовании кнопки «Назад» в браузере - PullRequest
0 голосов
/ 18 августа 2010

Я работаю над веб-проектом ASP.NET с некоторой магией AJAX. Поскольку для сбора данных GridView требуется до 15 секунд, я отправляю страницу клиенту и запускаю асинхронное обновление UpdatePanel через jQuery / JScript (см. Ниже).

Пока это хорошо работает. Теперь я хотел бы пропустить этот шаг, когда пользователь переходит на следующую страницу (например, подробный вид записи) и возвращается через кнопку «Назад». Есть ли способ получить его, и какой из них самый элегантный?

Этот не работает (значение hasDonePostBack не хранится в браузере):

var hasDonePostBack = false;
function fRefreshAsyncOnce(id, param) {
    $(document).ready(function() {
        if (!hasDonePostBack) {
            __doPostBack(id, param);
            hasDonePostBack = true;
        }
    });
}

Любая помощь будет отличной!

Причина, по которой это важно: для восстановления данных требуется еще 15 секунд. Более того, сетка работает с элементами управления и большим количеством клиентских скриптов (например, флажки, которые можно проверить, CSS-классы, которые переключаются и т. Д.), И все это должно быть одинаковым после возврата.

Ура, Matthias

1 Ответ

1 голос
/ 18 августа 2010

Возможно, вы захотите взглянуть на точку истории;Вы можете воспользоваться этим для этой функции: http://msdn.microsoft.com/en-us/library/cc488548.aspx

Однако, это характер зверя при запуске операций на стороне клиента ... другой вариант позволяет пользователю отменитьпостбэк (или попытайтесь интерпретировать способ отменить его самостоятельно), используя эту технику: http://msdn.microsoft.com/en-us/library/bb398789.aspx

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