Браузер Android Стрелка назад / повторная отправка данных старой динамической формы - PullRequest
1 голос
/ 17 ноября 2011

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

$('big form string here').appendTo('body').submit();

и различные другие формы добавления его в DOM и отправки.

Система реализована в среде jQuery Mobile.

Я установил, что система НЕ использует ajax для каких-либо изменений страницы или отправки формы.Я также вручную указал data-ajax = 'false' для каждой формы и на каждой странице.

Кроме того, заголовки страниц содержат следующее:

<meta http-equiv="Cache-Control" content="no-store, no-cache, must-revalidate, max-age=0"/> 
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="Sat, 26 Jul 1997 05:00:00 GMT" />

Кажется, у меня проблемабыть только в браузере Android и включает отправку формы во второй раз после нажатия браузера стрелка назад .

при возврате на страницу с ранее динамическиСозданная форма, я проверяю формы и любые входные данные во всем DOM и не нахожу ни одного.Что является точным с учетом приведенных выше значений заголовка правильно?После отправки я снова динамически воссоздаю форму, как в первый раз.

Но ... Когда я смотрю на форму и данные перед отправкой, в ней все еще содержатся данные о предыдущей отправке, и она отправляет предыдущие данные обратно на сервер!

Этого не происходит в Mobile Safari, Firefox или Chrome.

Единственный способ заставить его работать - это жестко закодировать форму в HTML на странице, что потребовало бы значительного рефакторинга моего проекта!

Я не уверен, смогу ли яЯ имею дело со скрытым объектом DOM здесь, или с тем, что связано с историей браузера, или с кешированием jQuery Mobile или с чем-то еще.Так как он на телефоне Android, не так просто взглянуть на весь DOM.

Кажется, ничто не приручило этого зверя.

Если кто-то заинтересован в том, чтобы увидеть эту форму в действии и, возможно,Есть несколько мощных способов отладки на Android, пожалуйста, запросите его, и я могу выслать вам ссылку и инструкции.

Также, пожалуйста, дайте мне знать наиболее эффективный способ эмуляции Android в каком-либо режиме отладки.

Большое спасибо.

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