2011-01-03 3 views
0

こんにちは私はフォームに関するこのロジックにどのようにアプローチするのかは不明です。フォームは大きく、20のフィールドがありますが、それは「悪い習慣」と考えられ、フォームは最小限に抑えるべきですが、クライアントがそれを望んでいるということはどうでもいいので、フォームは注文を受け取りますが、 「普通型」はすべてのフィールドを持ち、他の型はいくつかのフィールドといくつかのフィールドを持っていますが、現時点で注文タイプはgetパラメータから抽出され、その値に基づいていくつかのフィールドが表示され、その他は表示されません問題は、注文のタイプに「通常の」タイプよりも少ないフィールドが含まれている場合、自然にフィットするのではなく、一部の部品を細断した場合、フォームが醜いと思われるためです。 JSP):これに近づく方法、HTMLフォームをモーフィングする

  • 各注文タイプごとに個別のスタイルを定義します。 JSTLを使ってヘッダーに別のCSSスタイルシートを読み込む手段。
  • もう1つの方法は、注文タイプごとにサパラートHTMLページを作成することです。各ページには、注文タイプに必要なフィールドが含まれ、独自のCSSファイルが作成されます。
  • 各注文タイプに `c:choose`を使い、各` c:when`ブロックにフィールドを含めます。私はこれを非常に気に入らないのは、各ブロックのいくつかのフィールドを繰り返すことを意味するからです。

他の提案はありますか?

答えて

0

注文タイプに基づいてフィールドを無効/有効にすることを検討しましたか? 複数ページフォームを使用することはどうですか?

CSSがうまくいかないと言ったらどうしますか?

あなたの質問を正しく読んでも問題は純粋にCSSです。質問にタグを追加します。おそらくCSSを投稿できますか?具体的にどのフォームフィールドが現在表示/非表示になっているか

また、誤って大きなフォームから離れてしまうと、ユーザーがデータを失う可能性があることをクライアントに知らせることもできます(ajaxを使用しない限り)。

+0

フィールドの有効化/無効化に関する問題は、Google Chromeの「要素の検査」機能によって再び有効にできることです。そして、私は間違った言葉を選んだ、私は "混乱したCSS"と言うとき、それは間違って見えると私はそれが好きではないという意味です。警告ユーザーに対する大きな助言。 – Triztian

+0

よくあるすべての良いソフトウェアのように、検証サーバー側も実行する必要があります。 Chromes Inspect Elementのようなツールを持っている可能性があるのでブラウザが提供しているものはまったく信用できません –

+0

はい私はサーバー側の検証を実行することを知っていますが、フィールドが必要ない場合にはshowそれら。 – Triztian

関連する問題