Многошаговые формы и кнопка "назад" браузера

Главные вкладки

Аватар пользователя Eventus Eventus 6 марта 2012 в 18:11

Всем привет. Есть такая проблема, кто-то знает, как можно решить?
Есть форма из нескольких шагов. Когда пользователь заполняет шаги и хочет вернуться назад, жмёт "назад" в браузере, но когда опять жмёт "далее" на форме, то вся информация обнуляется(и то, что уже было заполнено). Смотрел, там весь массив form_state['storage'] обнуляется. Не пойму, почему так происходит...
Некоторые формы работают нормально(т.е. обнуляются только шаги после шага, куда пользователь вернулся), а другие всё обнуляют.

Может кто направит на путь исправления проблемы? Smile

Комментарии

Аватар пользователя tonyk tonyk 6 марта 2012 в 19:52

"Eventus" wrote:
Когда пользователь заполняет шаги и хочет вернуться назад, жмёт "назад" в браузере
Сделайте так, чтобы у пользователя не было желания нажимать кнопки в браузере - сделайте на форме свою кнопку "назад".

Аватар пользователя Eventus Eventus 6 марта 2012 в 20:10

Да, это понятно. На форме назад, в браузере можно поставить на джаваскрипте о том, что данные будут утеряны.
Но вопрос всё равно интересует...в чём же дело...не совсем понимаю, как это работает.

Аватар пользователя tonyk tonyk 14 марта 2012 в 18:56

"Eventus" wrote:
Некоторые формы работают нормально(т.е. обнуляются только шаги после шага, куда пользователь вернулся), а другие всё обнуляют.

Wild guess - это зависит от $form_state['cache']в D7 и от ключа "#cache" в массиве формы в D6.