JavaScriptで"history.back" を使うとフォームの入力値がすべてクリアされてしまう現象を修正した話
入力値が消える問題
入力 > 確認 > 送信 のよくあるフローのフォームを作成し、確認画面でJavaScriptのhistory.back
を使って履歴を戻ったところ、
入力したデータがすべて消えてしまう現象に出くわしました。
<a href="javascript:void(0);" onclick="history.back();">戻る</a>
検索してそれっぽい方法をいくつか試してみました。
ページの有効期限を設定してみたり:
<meta content="86400" http-equiv="Expires">
PHPのセッションの設定を変えてみたり:
session_cache_limiter('public')
session_start()
タグのvalue属性を消してみたり:
<input type="text" name="name">
2時間ほど奮闘してみましたが解決せず。
最終的に、フォームタグのautocomplete="off"
を消したら入力値を残すことができました。
お困りの際は是非。