- PR -

Strutsタグ?の動的指定

1
投稿者投稿内容
優子
常連さん
会議室デビュー日: 2004/03/26
投稿数: 39
投稿日時: 2004-09-26 18:05
今日は、優子です。

Strutsのタグ<html:multibox>のプロパティ属性に該当するアクションフォームのパラメータがHashMapやStringの配列のときは、<html:multibox property="goods(1)">のように()や[]を使うことで対応できますが、その添え字を動的に入れることは出来ませんでしょうか?

jsp内で値を宣言してfor文で繰り返して入れようとしても、
<% for(int a = 0;a < 3;a++){
String buf = new String("tokyo");
%>
<tr>
<td><html:multibox property="goods(<%=a%>)"><%=a%></html:multibox></td>
<td><html:text property="cnt(1)" /></td>
</tr>
<%}%>

そのままの値で表示されてしまいます。

皆様のご意見をお待ちしております。よろしくお願いいたします。

PC win2000
struts 1.2
java jdk1.4.2_05
tomcat 5.0

[ メッセージ編集済み 編集者: 優子 編集日時 2004-09-26 20:38 ]
のぶ
会議室デビュー日: 2003/01/09
投稿数: 11
お住まい・勤務地: とちぎ
投稿日時: 2004-09-26 23:56
Strutsのproperty属性等にスクリプレットを使うときは部分的にではなく、すべてをスクリプレットで記述する必要があるようです。
優子さんが記述されているJSPだけですと何をしようとしているか意味不明(失礼!)ですが、html:multiboxの部分は
コード:

<html:multibox property='<%="goods(" + a + ")" %>'><%=a%></html:multibox>


とすれば良いのではないでしょうか。
優子
常連さん
会議室デビュー日: 2004/03/26
投稿数: 39
投稿日時: 2004-09-27 00:12
−>のぶさま。

お返事ありがとうございました。
上記の通り実践した結果、上手く表示できました!
とても助かりました。非常に感謝しております!
taku
ぬし
会議室デビュー日: 2002/11/12
投稿数: 918
お住まい・勤務地: 墨田区→中野区
投稿日時: 2004-09-27 09:32
引用:

のぶさんの書き込み (2004-09-26 23:56) より:
Strutsのproperty属性等にスクリプレットを使うときは部分的にではなく、すべてをスクリプレットで記述する必要があるようです。
優子さんが記述されているJSPだけですと何をしようとしているか意味不明(失礼!)ですが、html:multiboxの部分は
コード:

<html:multibox property='<%="goods(" + a + ")" %>'><%=a%></html:multibox>


とすれば良いのではないでしょうか。


 スクリプトレットと式を間違えてませんか?
<%〜%>がスクリプトレットであり、<%=〜%>は式です。
のぶ
会議室デビュー日: 2003/01/09
投稿数: 11
お住まい・勤務地: とちぎ
投稿日時: 2004-09-27 13:57
taku(ぬし)様。 確かに式です。
「スクリプレット」か「Java式」か「式」か、表現に迷ったのですが、通りが良いと思って安易にスクリプレットと表現してしまいました。 みなさんは真似しないように!
1

スキルアップ/キャリアアップ(JOB@IT)