Что случилось с кешированием jquery-страниц? - PullRequest
1 голос
/ 11 декабря 2011

Я работаю на мобильном сайте с jQuery Mobile.Я знаю, что фреймворк помещает страницы в кеш, так что он может делать хорошие переходы между страницами, сокращать передачу данных и так далее.Но в моем случае это довольно скучно, потому что я думаю, что он не выполняет JavaScript на моей странице.Я объясню:

на этой странице представлена ​​форма с полем даты.Я использую mobiscroll для отображения даты выбора, когда фокус находится на этом поле.

Когда я отправляю форму, если есть ошибка проверки (я использую codeigniter), сервер перенаправляет на форму (заполняет поля и т. Д.), И тогда средство выбора даты больше не работает.Если я запускаю его из консоли JS, он снова работает, поэтому я думаю, что код JS не был повторно выполнен при возврате на страницу формы.

Я добавил data-ajax="false" как атрибут формычтобы заставить его работать (я потерял симпатичный переход, но мне все равно).Это лучшее решение?

Тогда я искал другой способ сделать это окончательно, потому что механизм кэширования создает проблемы на других страницах.Итак, я обнаружил:

$(document).live("mobileinit", function() {
    $.mobile.ajaxLinksEnabled = false;
});

Это должно полностью деактивировать кеш, но это не так.Я попытался удалить некоторые data-ajax="false", и у меня возникла та же проблема, что и раньше.

Так что случилось с механизмом кэширования страниц?И почему $.mobile.ajaxLinksEnabled = false; не работает?

Спасибо!

1 Ответ

1 голос
/ 13 декабря 2011

Я мог бы получить

$.mobile.ajaxLinksEnabled = false; 

работает и для моей проблемы лучше было сделать

$.mobile.ajaxEnabled = false; 

Я не загружал файлы .js в правильном порядке. (см. событие mobileinit http://jquerymobile.com/demos/1.0/docs/api/globalconfig.html)

НО мне все еще интересно, почему мой скрипт не выполнялся после каждой загрузки страницы (или что-то еще для системы навигации ajax).

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