2011-01-25 30 views
2

現在、Struts2アプリケーションを開発しています.3つの選択肢から1つを選択し、いくつかの異なる定義済みのチェックボックスが表示されます。チェックボックスの中には、選択したものにかかわらず表示されるものもあれば、作成できる選択肢ごとに固有のものもあります。合計で、現在約50種類のチェックボックスがあり、各チェックボックスのIDは1から50までです。リストから複数のstruts2チェックボックスを取得/設定する

ユーザの選択はデータベース内の行として保持されます。ユーザーが選択した内容を変更したい場合は、選択したチェックボックスを再入力します。

チェックボックスのリストを使用するのは適切ではありません。チェックボックスをページの異なるフィールドセットに配置する必要があるためです。だから私はレギュラーと付き合っていると思う。どこの選択リストから選択したチェックボックスを再増殖))preferebly /私のアクション 2に設定されたリストにそれらを置くことによって、選択されたチェックボックスを取得 1:

は今、誰がどのように私ができるのは良いアイデアを持っています保存されていますか?

アイデアは大変ありがとうございます。

答えて

2

1)このような何か()を使用すると、JSPを使用していると仮定使用し、選択したチェックボックスを取得するには、次の整数のArrayListのように、あなたは変数「YOURNAME」を取得することができ、あなたのActionクラスで

<input type="checkbox" name="YourName" id="checkbox-1" value="1" /> 
<input type="checkbox" name="YourName" id="checkbox-2" value="2" /> 
<input type="checkbox" name="YourName" id="checkbox-3" value="3" /> 
etc... 

をたとえば、Struts2によってチェックされたチェックボックスIDが自動的に入力されます。インスタンスの編集ページでチェックボックスが再配置さ

2)、多くの可能なソリューションがあります(あなたは私たちにいくつかのより多くのあなたのアーキテクチャの詳細については、オブジェクトなどを与えることができる?)

Actionクラスでは、以前にチェックされたチェックボックスのIDをリトリーブすることができます(selectedListと呼ぶ)。JSPビューでは、チェックボックスのチェックボックスに、チェックされた= "チェック"パラメータを追加することができます。ボックスはselectedListに含まれています。そのようなものはうまくいくはずです:

+0

あなたの答えをありがとう!私はJSPとstruts2タグライブラリを使用していますが、タグによって生成されるものとほとんど同じです。私はArrayListソリューションを確実にテストします。私のアーキテクチャに関して、私は1つのオブジェクトがユーザー情報を保持しています。そのオブジェクトには、各ユーザーによって選択された回答を表すオブジェクトを保持するSetの@OneToManyアノテーションがあります。したがって、回答を含むリストを取得し、編集ページの基礎として使用することは非常に可能です。 については、チェックボックスのタグの中に入れますか? – Daniel

+0

Struts2タグを別のStruts2タグ内に置くことはできません(したがって、 />は機能しません)。経験から、通常のXHTMLタグを使用する方が便利な場合があります。 S2タグを使用する場合は、などのようにすることができます。 Struts2チェックボックスをチェックするには、その値に "true"を指定する必要があります。これは痛みを伴う可能性があります(たとえば、アクションクラスに別の値を取得したい場合)。それ以外の場合は、チェックボックスリストを使用する必要がありますが、必ずしも便利ではないためです。 – TBW

+0

ああ、私はあなたのポイントを得る。このように思えますが、XHTMLタグを使ったあなたのアプローチはif/elseタグにstrutsタグを付けるよりはるかにクリーンになります。私は明日このアプローチをテストすることができますし、結果を得ることができます! – Daniel

関連する問題