Как мне сохранить данные формы при нажатии кнопки "Назад"

StackOverflow https://stackoverflow.com/questions/1029476

Вопрос

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

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

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

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

Спасибо.

Сэм

Это было полезно?

Решение

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

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

Другие советы

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

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top