Как сохранить данные формы при нажатии кнопки "Назад"
Я разрабатываю приложение для рельсов. (Я не думаю, что это проблема, связанная с рельсами). Процесс резервирования состоит из 3 этапов. Когда пользователь находится на странице шага 2, если пользователь нажимает кнопку "Предыдущий", данные формы на шаге 1 должны быть такими же, как и раньше.
Я приложил "history.go(-1);" на кнопку "Предыдущий".
Это работает в моем браузере Firefox. Но это не работает в некоторых браузерах IE. Мой IE работает, хотя.
Как я могу заставить его сохранить данные формы, когда страница вернется?
Благодарю.
Сэм
4 ответа
Не могу положиться на клиента (javascript) для такого рода операций.
Вы сохраняете данные где-то на шаге 1, так что просто восстановите их.
Вы можете сохранить данные страницы 2 в базе данных, или в кеше памяти сервера, или в файле cookie, или в трех файлах, и восстановить их при загрузке страницы.
Найдите скрытый iframe на странице для хранения данных. Я не уверен в специфике реализации этого, но это метод, который люди используют для хранения состояния страницы, когда хэш изменяется в URL. Проверьте, помогают ли некоторые библиотеки, такие как dojo и jquery, поддерживать эту ситуацию.
ASP.NET делает это автоматически через ViewState (примечание: статья древняя, но все еще довольно точная). Возможно, вы сможете адаптировать подобный подход к Rails.