広く普及する前にAJAX使用およびDHTMLが送信され、ブラウザはその応答をロードすることによって更新されますPOST以前の(フォーム)を置き換えるHTTPリクエスト)ビューポートのページです。AJAXが一般的に使用されているため、2つの方法で対処できます。
私は、それぞれの特定のアプローチを使用する方が良いときのいくつかの一般的なガイドラインを考え出そうとしています。これが私が思いついたものです。私の大まかな試みよりも優れた既存のユースケースのセットがあるかどうか、または検討していない他の一般的なユースケースがあるかどうかを確認したいと思います。
AJAX submission when:
次の場合は、通常のフォーム送信を使用してください。
また、これらの推測が最適ではないUXを生成する理由があるかどうかも確認してください。
UXの観点から、AJAXは100%の確率で改善されると思います[〜#〜] if [〜#〜]提供できます[〜#〜] all [〜#〜]フォームが処理中であり、壊れているように見えるだけではなく、適切な視覚的手掛かり。
考慮すべき点は次のとおりです。
<button>Submit <img src="spinner.gif"></button>
内にビジュアルスピナーを提供し、処理が完了したらそれを削除してください
送信時にプログラムでボタンを無効にし、視覚的およびプログラム的にフォームの二重送信を防止します
明確なエラーvs成功vsさらにアクションが必要なメッセージを含む、簡単に識別できるメッセージボックスを提供する
予期しない結果を引き起こす可能性のあるネットワークおよびサーバーのエラーを考慮に入れ、それらを確実にキャッチしてください
成功時に別のページを表示する必要がある場合、JSは確かにそれを処理できます
プログラミングの観点から見ると、フィールドのPOST値を持ち歩くことを心配する必要がないので、特にそのフィールドはユーザーとの対話によって動的に生成された可能性があるため、作業が楽になります。
非常に大きなPOSTを実行している場合、ページが変更される前にブラウザがサーバーにこれらのすべてのバイトを送信できるようになるまでユーザーは待機する必要があり、ユーザーはもう我慢できないと思います私のものより。
全体として、想定のリストは正しい方向に向かっていますが、理にかなっている場合は両方を使用する可能性から除外しません。他にいくつかのアイデアがあります: