Как сохранить данные формы при нажатии кнопки «Назад» - PullRequest
3 голосов
/ 23 июня 2009

Я занимаюсь разработкой приложения для рельсов. (Я не думаю, что это проблема, связанная с рельсами) Там процесс бронирования, который состоит из 3 шагов. Когда пользователь находится на странице шага 2, если пользователь нажимает кнопку «Предыдущий», данные формы на шаге 1 должны быть такими же, как и раньше.

Я прикрепил "history.go (-1);" на кнопку «Предыдущий».

Это работает в моем браузере Firefox. Но это не работает в некоторых браузерах IE. Мой IE работает, хотя.

Как заставить его сохранить данные формы, когда страница вернется?

Спасибо.

Sam

Ответы [ 4 ]

3 голосов
/ 23 июня 2009

Невозможно полагаться на клиента (javascript) для такого рода операций.

Вы сохраняете данные где-то на шаге 1, поэтому просто восстановите их.

1 голос
/ 23 июня 2009

ASP.NET делает это автоматически через ViewState (примечание: статья древняя, но все еще довольно точная). Возможно, вы сможете адаптировать подобный подход к Rails.

1 голос
/ 23 июня 2009

найдите скрытый iframe на странице для хранения данных. Я не уверен в специфике реализации этого, но это метод, который люди используют для хранения состояния страницы, когда хэш изменяется в URL. Проверьте, помогают ли некоторые библиотеки, такие как dojo и jquery, поддерживать эту ситуацию.

1 голос
/ 23 июня 2009

Вы можете сохранить данные страницы 2 в базе данных, или в кеше памяти сервера, или в файле cookie, или в трех файлах и восстановить их при загрузке страницы.

...