tdのrowspan=""を入力の有無で、追加/数変更する方法は?
Posted: 2007年5月26日(土) 16:33
いつもお世話になっております。
CMSDのおかげで、多くのお客様に満足頂いております。
この度、新たな案件にてやり方がわからない箇所が出てきました。
それは、tableによる表を作る場合です。
例えば下記のように、スキーマ定義をし・・・
<data name="chart" type="list" caption="表一覧入力">
<listitem caption="表入力">
<data name="kind" type="text" caption="種別入力" />
<data name="maker" type="text" caption="メーカー名入力" />
<data name="style" type="text" caption="型名入力" />
<data name="ability" type="text" caption="加工能力" />
</listitem>
</data>
これをテーブルを使って表現するときに下記のようになります。(デザイン定義)
<table>
<tr>
<th>種別</th>
<th>メーカー名</th>
<th>型名</th>
<th>加工能力</th>
</tr>
<xsl:for-each select="chart/listitem">
<tr>
<td><xsl:value-of select="kind" /></td>
<td><xsl:value-of select="maker" /></td>
<td><xsl:value-of select="style" /></td>
<td><xsl:value-of select="ability" /></td>
</tr>
</xsl:for-each>
</table>
ただ、kindの部分の<td></td>を縦につなげたい場合にはどうしたらいいのか。
要は、
<td rowspan="?"><xsl:value-of select="kind" /></td>にしたいのです。
もし、入力部kindに同じものが入力された場合に、
<td rowspan="2"><xsl:value-of select="kind" /></td>
としたり、
<td rowspan="3"><xsl:value-of select="kind" /></td>として、
出力したいということです。
わかりずらい質問ですみません。
ご返答頂けると幸いです。
よろしくお願い致します。
CMSDのおかげで、多くのお客様に満足頂いております。
この度、新たな案件にてやり方がわからない箇所が出てきました。
それは、tableによる表を作る場合です。
例えば下記のように、スキーマ定義をし・・・
<data name="chart" type="list" caption="表一覧入力">
<listitem caption="表入力">
<data name="kind" type="text" caption="種別入力" />
<data name="maker" type="text" caption="メーカー名入力" />
<data name="style" type="text" caption="型名入力" />
<data name="ability" type="text" caption="加工能力" />
</listitem>
</data>
これをテーブルを使って表現するときに下記のようになります。(デザイン定義)
<table>
<tr>
<th>種別</th>
<th>メーカー名</th>
<th>型名</th>
<th>加工能力</th>
</tr>
<xsl:for-each select="chart/listitem">
<tr>
<td><xsl:value-of select="kind" /></td>
<td><xsl:value-of select="maker" /></td>
<td><xsl:value-of select="style" /></td>
<td><xsl:value-of select="ability" /></td>
</tr>
</xsl:for-each>
</table>
ただ、kindの部分の<td></td>を縦につなげたい場合にはどうしたらいいのか。
要は、
<td rowspan="?"><xsl:value-of select="kind" /></td>にしたいのです。
もし、入力部kindに同じものが入力された場合に、
<td rowspan="2"><xsl:value-of select="kind" /></td>
としたり、
<td rowspan="3"><xsl:value-of select="kind" /></td>として、
出力したいということです。
わかりずらい質問ですみません。
ご返答頂けると幸いです。
よろしくお願い致します。