|
|
|
Как показать предыдущее состояние ajax страницы при возврате по кнопке "назад"
|
|||
|---|---|---|---|
|
#18+
На этом форуме столько споров вокруг java и js, что думаю, тут точно люди знают как сделать след-ее: - как показать предыдущее состояние ajax страницы при возврате по кнопке "назад" таким как оно было когда юзер перешел с этой страницы? jsp: Код: html 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. скрипт Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. сервлет Код: java 1. 2. 3. 4. 5. Проблема в том, что после того как обновлено значение div id="ajaxGetUserServletResponse" и выполнен переход на help.html, то при переходе по кнопке "назад" содержимое ajaxGetUserServletResponse уже не отображается, т.к. оно не сохранилось. Как его сохранить - в этом вопрос. p.s. спецом взял простой пример, чтобы проще было объяснять. тут используется history.js. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2016, 21:00 |
|
||
|
Как показать предыдущее состояние ajax страницы при возврате по кнопке "назад"
|
|||
|---|---|---|---|
|
#18+
rema174, для хранения можно использовать localStorage но проще блокировать кнопки назад /вперёд а вместо ajax- использовать ws ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2016, 21:39 |
|
||
|
Как показать предыдущее состояние ajax страницы при возврате по кнопке "назад"
|
|||
|---|---|---|---|
|
#18+
вадя, а без локал сторэдж, средствами html5 history api это возможно сделать? блоктровать кнопки - мне бы не понравилось... ws - никогда не имел дело, но ни разу не сомневался, что вспомнишь :) наверное, если кто-то тут спросит про хелловорлд ты тоже скажешь, что проше через вебсокет делать ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2016, 21:46 |
|
||
|
Как показать предыдущее состояние ajax страницы при возврате по кнопке "назад"
|
|||
|---|---|---|---|
|
#18+
rema174вадя, а без локал сторэдж, средствами html5 history api это возможно сделать? блоктровать кнопки - мне бы не понравилось... ws - никогда не имел дело, но ни разу не сомневался, что вспомнишь :) наверное, если кто-то тут спросит про хелловорлд ты тоже скажешь, что проше через вебсокет делать ) histori api не пробывал, а почему блокировка назад/вперёд не нравится? в чем смысл переходить назад? ведь если что-то изменил- сохранено в базе, и при переходе назад, должно отобразиться уже измененное. в принципе ( как пример такой необходимости) это переход к просмотру корзины и обратно. но для этого удобнее открывать новую вкладку. и если использовать ws, то можно с одной вкладки обновлять данные на другой (в корзине) и в этом случае переход назад не нужен,даже вреден. ну я просто хочу найти соратников, что б лучше использовать ws, а то скучно в одиночку... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2016, 22:01 |
|
||
|
Как показать предыдущее состояние ajax страницы при возврате по кнопке "назад"
|
|||
|---|---|---|---|
|
#18+
rema174, https://developer.mozilla.org/ru/docs/Web/API/History_API но я бы не удивился что при возврате на страничку "она не такая". Юзверь не дурак понимает что со страницы он ушёл)). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2016, 23:36 |
|
||
|
Как показать предыдущее состояние ajax страницы при возврате по кнопке "назад"
|
|||
|---|---|---|---|
|
#18+
Petro123, за ссылку спасибо, но я это уже читал -а вот как его применить к проекту чтобы сработало... тем более это html 5 history, а у меня показало History.js, но справедливости ради можно сказать, что они похожи. Тем не менее вопрос открыт - такая простой проектик, а как прикрутить... я тут переделал проект (другой) обратно на "no-ajax" так у меня это заняло ну минут десять, а сколько я провозился с этим аяксом и вспонимнать неохота. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2016, 23:56 |
|
||
|
Как показать предыдущее состояние ajax страницы при возврате по кнопке "назад"
|
|||
|---|---|---|---|
|
#18+
rema174, 1. AJAX не применяют при переходах по страницам. Его применяют либо на события - клики юзверей, либо на ОДНОстраничном сайте. Т.е. придумай пример получше. 2. По той ссылке есть примеры и код на гитхабе. Нужно сделать примеры и тогда поймёшь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2016, 00:01 |
|
||
|
Как показать предыдущее состояние ajax страницы при возврате по кнопке "назад"
|
|||
|---|---|---|---|
|
#18+
Petro123AJAX не применяют при переходах по страницам. Его применяют либо на события - клики юзверей, либо на ОДНОстраничном сайте. Т.е. придумай пример получше. если для одностаничного сайта, то я б и не спрашивал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2016, 00:07 |
|
||
|
Как показать предыдущее состояние ajax страницы при возврате по кнопке "назад"
|
|||
|---|---|---|---|
|
#18+
>1. AJAX не применяют при переходах по страницам. можно Код: javascript 1. 2. 3. 4. по состоянию; создаем линк, смотрим где мы сейчас, сохраняем нужные значения всех или нужных элементов куда нибуть, потом проверяем кто на текущем экране и устанавливаем сохраненные значения Код: javascript 1. 2. 3. 4. 5. 6. вариантов вроде много придумать можно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2016, 00:18 |
|
||
|
Как показать предыдущее состояние ajax страницы при возврате по кнопке "назад"
|
|||
|---|---|---|---|
|
#18+
breath, только имеется в виду кнопки назад/вперёд браузера..... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2016, 00:28 |
|
||
|
Как показать предыдущее состояние ajax страницы при возврате по кнопке "назад"
|
|||
|---|---|---|---|
|
#18+
window.location при этом сменится ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2016, 00:32 |
|
||
|
Как показать предыдущее состояние ajax страницы при возврате по кнопке "назад"
|
|||
|---|---|---|---|
|
#18+
вадяа почему блокировка назад/вперёд не нравится? в чем смысл переходить назад? ведь если что-то изменил- сохранено в базе, и при переходе назад, должно отобразиться уже измененное. оно не обязательно должно(будет) сохраняться в базе. протсо для улучшения юзер экспириенса есть решения которые лучше делать аяксом - у меня именно такое. и что такое блокировка кнопок? если кнопок браузера, то это разрыв шаблона юзер экспиринеса. я время от времени пользуюсь таким сайтом - бакн-клиент, там кнопка назад вперед действительно выключана, и каждый раз выскакиевает окно с инфой почему они так сделали, вместо кнопок браузера у них кнопки программные - это раздражает, так как по привычке тянешся на кнопки браузера. вадяну я просто хочу найти соратников, что б лучше использовать ws, а то скучно в одиночку... ааа. а то уже весь форум наслышан про возможности ws ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2016, 13:35 |
|
||
|
Как показать предыдущее состояние ajax страницы при возврате по кнопке "назад"
|
|||
|---|---|---|---|
|
#18+
breathwindow.location при этом сменится ? для моего примера? конечно http://localhost:8080/MyWebapp/?state=1 --> http://localhost:8080/MyWebapp/help.html --> http://localhost:8080/MyWebapp/?state=1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2016, 14:15 |
|
||
|
Как показать предыдущее состояние ajax страницы при возврате по кнопке "назад"
|
|||
|---|---|---|---|
|
#18+
вопрос(и сразу ответ) был любителю волшебных ws, на его сообщение. но win.location сменится обязательно, по сути он (url) будет ключом к набору сохраненных данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2016, 14:20 |
|
||
|
Как показать предыдущее состояние ajax страницы при возврате по кнопке "назад"
|
|||
|---|---|---|---|
|
#18+
всем спасибо, получилось с локал сторедж только вопрос - локал сторедж сохраняет вроде в пределах окна браузера? потому что закрываю браузер, в котором произошло сохранение в локалсторедж, открываю, а значения уже есть... если из аякс-страницы в страницу имена переменных совпадают, то как их лучше сохранять: - имя url+varname ? - все ложить в переменную с именем url ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2016, 15:59 |
|
||
|
Как показать предыдущее состояние ajax страницы при возврате по кнопке "назад"
|
|||
|---|---|---|---|
|
#18+
rema174, уже тыщу лет сохраняют в куки поля на странице. Тогда и твой вопрос отпадёт. Если работаем с БД, то сохраняют фильтр или условие в этих куках. А не значения 10000руб при запросе из БД. rema174если из аякс-страницы если термин аякс-страница, то это всё таки - одностраничное приложение. А урл мы делаем фальшивым. Почему вместо нормального урла и страницы напр. "ИмяСтранички.JSP" ( http://localhost:8080/MyWebapp/ИмяСтранички) делать вывод из сервлета - непонятно. Но это дело автора. Если бы автор не брал ЦЕЛИКОМ страницу по AJAX из сервлета, то и темы такой бы вообще не было. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2016, 16:21 |
|
||
|
Как показать предыдущее состояние ajax страницы при возврате по кнопке "назад"
|
|||
|---|---|---|---|
|
#18+
Petro123, мне кажется storage удобнее чем куки. хотя и не использовал я этих куков никогда на самом деле... тем более куки можно и вырубить, хотя обычный юзверь вообще не понимает кто такие куки ) ну, по сути, та часть приложения, что я называю аякс-страница и есть одностраничная, там и урл-то синтетический, типа mywebapp\#1 и т.д., хотя я понимал одностраничники несколько иначе... авторПочему вместо нормального урла и страницы напр. "ИмяСтранички.JSP" ( http://localhost:8080/MyWebapp/ИмяСтранички) делать вывод из сервлета - непонятно. Но это дело автора. потому что из сервлета удобно брать динамические серверные данные, что тут непонятного? тем более, я использую сервлет в скрипте, а jsp страницу ты куда в скрипте притулишь? авторЕсли бы автор не брал ЦЕЛИКОМ страницу по AJAX из сервлета, то и темы такой бы вообще не было. нет. где в примере я беру целиком страницу из сервлета? вопрос был за конкретный пример. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2016, 17:06 |
|
||
|
Как показать предыдущее состояние ajax страницы при возврате по кнопке "назад"
|
|||
|---|---|---|---|
|
#18+
> а jsp страницу ты куда в скрипте притулишь так же вызвать как сервлет /myPage.jsp и она станет сервлетом позже ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2016, 17:15 |
|
||
|
Как показать предыдущее состояние ajax страницы при возврате по кнопке "назад"
|
|||
|---|---|---|---|
|
#18+
breath, точно. можно и так, если есть необходимость предварительно форматировать данные в странице. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2016, 17:18 |
|
||
|
Как показать предыдущее состояние ajax страницы при возврате по кнопке "назад"
|
|||
|---|---|---|---|
|
#18+
я тут подумал, что там где я хотел обойтись хистори для показа предыдущих состояний страниц, можно было бы обойтись запоминанием положения скрола от страницы к страницы, а сами страницы все-таки не делать аяксом - это запоминание скрола средствами js можно сделать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2016, 17:23 |
|
||
|
Как показать предыдущее состояние ajax страницы при возврате по кнопке "назад"
|
|||
|---|---|---|---|
|
#18+
класс, все работает, пошел дальше осваивать js)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2016, 18:39 |
|
||
|
Как показать предыдущее состояние ajax страницы при возврате по кнопке "назад"
|
|||
|---|---|---|---|
|
#18+
rema174, localstorage, ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2016, 18:40 |
|
||
|
Как показать предыдущее состояние ajax страницы при возврате по кнопке "назад"
|
|||
|---|---|---|---|
|
#18+
rema174запоминание скрола средствами js можно сделать? HTML якоря которые в урл после #якорь https://www.google.ru/search?q=hml якорь&ie=utf-8&oe=utf-8&gws_rd=cr&ei=ErLAVrC9OOTg6ASQoZ2gCQ ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2016, 19:59 |
|
||
|
Как показать предыдущее состояние ajax страницы при возврате по кнопке "назад"
|
|||
|---|---|---|---|
|
#18+
rema174нет. где в примере я беру целиком страницу из сервлета? вопрос был за конкретный пример. просто ты употреблял термин AJAX страница , а не AJAX данные в странице. Например, курс валюты при нажатии на кнопку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2016, 20:02 |
|
||
|
Как показать предыдущее состояние ajax страницы при возврате по кнопке "назад"
|
|||
|---|---|---|---|
|
#18+
Petro123, я попробовал запоминать скрол, но страница дергается, т.к. на ней комплексный контент - это работает только на статическом контенте... я думаю с якорями, если они работают по такому же принципу, будет тоже самое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2016, 12:42 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=104&tid=2124363]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
36ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
68ms |
get tp. blocked users: |
2ms |
| others: | 230ms |
| total: | 373ms |

| 0 / 0 |
