способ повторной инициализации страницы каждый раз, когда она отображается - PullRequest
2 голосов
/ 17 августа 2011

У меня есть несколько страниц, которые динамически заполняются содержимым, загруженным с помощью Ajax. Моя проблема в том, что каждый раз, когда я захожу на эту страницу, старый контент остается там, если он не был заменен новым контентом ...

Я думал о 2 домашних решениях, таких как:

  • Создание страницы шаблона. Вызвав "pagebeforeshow", я скопирую код из шаблона на целевой странице и добавлю туда динамический контент ...
  • В каждом DOM, в который должен быть помещен динамический контент, у меня был класс "clearcache", и, вызывая "pagebeforeshow", я делаю $ (". Clearcache"). Empty ();

Я не знаю, как с этим справиться. У вас когда-нибудь возникала такая же проблема?


EDIT:

<a href="#PageBlock" data-ajax="false" block-id="5" data-transition="flip"></a>

Я связываю событие «tap», чтобы сохранить идентификатор блока в localstorage, чтобы загрузить динамический контент в #PageBlock Все работает очень хорошо (событие tap, localalstorage для var, загрузка ajax). Проблема действительно возникает, когда я перехожу из одного блока в другой. Новый контент перезаписывает старый контент вместо того, чтобы начинаться с новой «пустой» страницы.

Например, у меня есть список, куда я добавляю данные, полученные от Ajax. Если я переключаюсь на другой блок, список завершается и не обновляется ..

Я мог бы сделать что-то вроде очистки списка, а затем добавить контент, но я бы хотел что-нибудь получше, потому что у меня есть несколько страниц / списков / доменов вроде этого ...

Спасибо за вашу помощь;)

1 Ответ

0 голосов
/ 24 января 2012

Я столкнулся с аналогичной проблемой, когда новое содержимое не отображалось на странице, когда я пытался добавить его. Существует простое решение, в котором вы можете просто заменить добавление на prepend. Пример: замещать $ ( "# DIVID"). Присоединять (содержание) с $ ("# divid") .prepend (content)

...