Кнопка возврата браузера Ajax - PullRequest
4 голосов
/ 22 марта 2011

Я знаю множество тем на эту тему, но я не мог определить, что делать, основываясь на том, что я прочитал в других темах.

У меня есть страница "abc.php". Пользователь может выполнить поиск, который затем заполняет форму двумя запросами ajax. Затем, если пользователь переходит на другую страницу и затем нажимает НАЗАД, чтобы «abc.php», содержимое формы не является полным, потому что ajax не запускается. Есть ли способ сделать это?

Ответы [ 3 ]

4 голосов
/ 22 марта 2011

Измените свой URL, когда вы выполняете ajax, добавив туда условия поиска после хеша (например, http://example.com/search.php#search-terms-here)

Затем, когда страница загружена, прочитайте условия поиска обратно из URL.

1 голос
/ 31 мая 2012

Используя history.js , следующая функция «прослушивает» изменения в строке URL и вызывает функцию для загрузки соответствующей страницы:

History.Adapter.bind(window,'statechange',function(){  
    var State = History.getState();  
    page(State.url);  
});

function page(url) {
    //AJAX
}

Теперь, когда вы захотитечтобы изменить страницу, вы звоните:

History.pushState({state:X}, "Page Title", "Page Url");

Это обновит панель URL браузера и автоматически вызовет страницу (State.url) для нового URL;и все функции браузера, такие как кнопка «вперед / назад», закладки и т. д., должны работать.

1 голос
/ 22 марта 2011

Это - очень хорошая статья / учебник по включению кнопки возврата с помощью jQuery.

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