0

同じページにグリッドを表示する検索ボックスを備えたページを作成しています。また、ユーザーがグリッドを構成できる「ウィンドウ」(同じページにJQuery UIの「ポップアップ」)を表示するためにユーザーが選択できるボタンもあります。

これらは2つの別個のフォームですが、一方の一部として送信されたものが他方を元に戻すことは望ましくありません(したがって、ユーザーが送信してグリッドレイアウトを変更する場合は、検索も再実行する必要があります。

これには、独自の問題が発生するため、セッションに保存したくありません(検索結果が大きくなる可能性があるため、後でページを再入力するときに保存しないでくださいなど)。

フォームバッキングBeanによってバッキングされたページ全体に対して「1つの大きなフォーム」(つまり、すべての入力を囲む)を実行することを検討しました。次に、どのボタンがクリックされたかを使用して、実行するアクションを決定します。最終的には、ページ上に他のボタンも追加され、機能が追加されます。これは、.NET(非MVC)が処理する方法と似ています。

他の人がどのように同様の課題を解決したのか興味があります。私のアプローチには、私が見ていなかった潜在的な問題がありますか?フレームワークと連携するより良い方法は?

4

1 に答える 1

1

あなたはどういう意味ですか:

しかし、私は一方の一部として提出されたものがもう一方を元に戻すことを望んでいません

。フォームを投稿してページ全体をロードすると、他のフォームが「リセット」されますか?

その場合でも、2つのフォームを含む1ページを保持し、Ajaxを使用して投稿を行います(jQueryを使用すると簡単にできます)。いずれかの呼び出しに対する応答を受信したら、それに応じて他のフォームを更新する必要があります。

コードをクリーンに保ち、Ajax呼び出しでHTMLを別のビューにプルするのに役立つ場合は、フォームが2つの別々のビューにある可能性があることに注意してください。しかし、私のポイントは、お互いに依存しているように見えるので、最終的には両方を1つのページに保持するので、他の変更がこの方法で簡単になる可能性があるときに一方を更新することです。

あなたの質問を誤解した場合はお知らせください。

于 2012-12-14T18:33:34.370 に答える