Web サイトで、ウィザードを実装したいと考えています。一連のフォームのように見えるはずです。
私の要件は次のとおりです。
- ユーザーは、フォームの再送信を求めるプロンプトが表示されることなく (前後に移動する場合)、ブラウザの前後ボタンを使用できる必要があります。
- ユーザーが前に入力したページを前後に移動した場合、フィールドはオートコンプリートされる必要があります
- ユーザーが前の手順を完了せずにページにアクセスしようとすると、それに応じてリダイレクトされます (最後に要求されたページ)。
- ユーザーは、フォームを離れて戻ってきた後、フォームの入力を再開できる必要があります。
- 私のモデルでは、各ページは前のページに入力する必要がありました。また、各ページには独自の検証があります。
- URLはきれいでなければなりません。
- ウィザードは JavaScript なしで動作するはずです (必須ではありません)。
どのように実装しますか? (一連の http 投稿フォーム、http get フォーム、javascript 経由で送信するかどうか)
ヒント:
セッションのすべての情報を保存し、ウィザードの最後に情報をデータベースに保存し、現在のセッション情報を消去する予定です。このようにして、フィールドをオートコンプリートし、ウィザードの完了時にユーザーがどこにいるかを知ることができます。
私の主な懸念事項:
- http投稿フォームを実装すると、ブラウザは各フォームを再送信するように求めます(そして、それを制御する方法がわかりません)
- http GET フォームで実装すると、URL は情報で満たされ、非常に長くなる可能性があります。また、GET リクエストの手段ではありません。
- 各フォームを javascript 経由で http ポスト経由で送信すると、プロンプトは表示されませんが、ウィザードは JavaScript では機能しません (おそらく解決策は、デフォルトのフォーム動作をオーバーライドして、JavaScript の有無にかかわらず機能するようにすることです)。