- PR -

テーブルである一定数を超えたら次の列に書きこむ。

1
投稿者投稿内容
れんれん
常連さん
会議室デビュー日: 2005/07/25
投稿数: 44
投稿日時: 2005-07-30 11:44
こんにちは。
<bean:write>で、Beanにある、一次元配列のデータを順番に書き出しています。tableの中にです。
ただ、このままだと、数が増えればずっと横に伸びていくので、4つになったら、折曲がるようにしたいと思いました。
で、JSPを書き込んで、4になったら<tr>を書き出せないかと思い、何とかならないかと試しているのですが、これはどんな方法があるのでしょうか?
ちなみに以下が私が考えうるものなのですが、当然うまく作動しません。HTMLソースを見ても<tr>は書き出されていません。どうすればいいのでしょうか、方法を教えてください。

<logic:iterate id = "Kaiten" name="NaviBean" property="menu" indexId="idx">
<td width="4%" valign="middle">
  <bean:write name="Kaiten" /></td>

//以下がJSPスプレット
<% if(a%4 == 0){
out.println("<tr>");
a++;
} else {
a++;} %>

</logic:iterate>
Anthyhime
ぬし
会議室デビュー日: 2002/09/10
投稿数: 437
投稿日時: 2005-07-30 19:12
コード:

<%int a = 0;%>
<logic:iterate id="Kaiten" name="NaviBean" property="menu" indexId="idx">
<%
if ((a % 4) == 0) {
if (a != 0) {
out.print("</tr>");
}
out.print("<tr>");
}
a++;
%>
<td width="4%" valign="middle"><bean:write name="Kaiten" /></td>
</logic:iterate>
<%if (a != 0) {%>
</tr>
<%}%>


こうかな?

[ メッセージ編集済み 編集者: Anthyhime 編集日時 2005-07-30 19:19 ]
れんれん
常連さん
会議室デビュー日: 2005/07/25
投稿数: 44
投稿日時: 2005-07-31 16:34
こんにちは。
何の問題もなく出来ました。elseはいらなかったんですね。
ありがとうございました。
未記入
常連さん
会議室デビュー日: 2005/02/23
投稿数: 20
投稿日時: 2005-08-01 13:22
問題点を見間違えていますよ。
elseがいらないのではなくて、ifの条件式の中身が違っています。
1

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