2011-07-12 6 views
1

私は、ページ上のフォームを分割して別々のタブに配置する必要があるプロジェクトに取り組んでいます。 Apache Wicketはタブ(TabbedPanelクラス)を使って非常に素敵で簡単な方法を持っていますが、このソリューションはAJAXに依存してパネルの内容を読み込むため、フォームの唯一の部分はユーザーの後に送信されます"Submit"ボタンを押します。Apache Wicketでタブに分割されたフォーム

シンプルなCSS/JSタブ(http://www.barelyfitz.com/projects/tabber/)の解決策が見つかりましたが、サードパーティーのソリューションを使用するのが気にならず、プロジェクトが複雑になっています(ライセンスについてもわかりません)。

どうすればよいですか?

答えて

2

完全にJS/CSSベースのJQueryでTabbedPanelのいくつかの意味があります。 wicketstuffのjquery統合プロジェクトとWiQueryプロジェクトを参照してください。

+0

ヒントありがとうございますが、非jQueryベースのCSS/JSソリューションを使用しました。それでも、jQueryとWicketの統合についてのあなたのヒントは、私の将来のプロジェクトにとって貴重です。 :) – DoktorNo

0

これは私にとって非常にウィザードに似ています。ウィッケットはこの種のユースケースを処理するためにwizard componentを提供するので、これは見栄えがよいかもしれません。私はこのコンポーネントをまだ使用していないので、タブを表示するにはどのくらいの距離をとることができないのか分かりませんが、できない場合は、少なくともタブを使って独自にビルドする方法についてのアイディアを与えるかもしれません。

+0

ウィザードを調べる価値はありますが、タブでこれを行う必要があります。 – DoktorNo

+0

@DoktorNo Tabは、ウィザードから保護された 'Component newButtonBar(final String id)'をオーバーライドし、タブを構築する 'org.apache.wicket.extensions.wizard.IDefaultButtonProvider'の独自の実装を提供することで簡単に実装する必要があります他のボタンはもともとウィザードにあります)。 – Nicktar

+0

いいですが「本当の」タブでは、ウィザードのような他のパネルを使わずに、フォームの特定の部分にすばやく移動できます。 – DoktorNo

1

デフォルトのTabbedPanelはAJAXを使用しません。 Ajaxを使用するには、独自の実装(AjaxTabbedPanel)があります。

+0

しかしこれは、依然として、異なるタブのコンポーネントが異なるリクエストで送信されることを意味します。 –

+0

@McGregor - 正確に! - AjaxTabbedPanelとTabbedPanelの両方を試しました。同じ結果。 – DoktorNo

関連する問題