XSLT表列格式问题

时间:2012-12-21 21:32:10

标签: xslt

我遇到了在XSLT中正确格式化表格的问题。我帮助删除了样式表中的所有空元素。现在我遇到了行关闭的问题。我试图上传一张桌子的图片,但我没有足够的代表。我会尝试解释这个问题。

简而言之,文件(标号33,34和35)没有正确排列其列。

唯一ID 31,32和33都是AML组的一部分。 UniqueID 33,34和35都是文档组的一部分。在一个实例中,有3个AML和2个Docs。所以第一行工作正常,但第2行和第3行只有AML数据,而第二行文件在左边的新行中。 AML也可以有更多的文件。

有没有办法定义每次数据的列?

如果AML为空,我可能需要空白单元格。以便Doc列正确排列。

感谢您的帮助。

我的代码

 <xsl:template match="Item[@type='Part AML']|Item[@type='Part Document']">
  <tr>
  <xsl:apply-templates select="state"/>

<xsl:apply-templates select="related_id[@type='Manufacturer Part']/Item/manufacturer/@keyed_name"/>

   <xsl:apply-templates select="related_id[@type='Manufacturer Part']/Item/item_number"/>

<xsl:apply-templates select="related_id[@type='Document']/Item/item_number"/>

<xsl:apply-templates select="related_id[@type='Document']/Item/name"/>

<xsl:apply-templates select="related_id[@type='Document']/Item/major_rev"/>
</tr>
  </xsl:template>

  <xsl:template match="Item[@type='Part AML' or @type='Part Document']/state">

   <td rowspan="{$rowCount}" width="5%" align="center" uniqueID="ms__id31">
   <xsl:apply-templates/>
 </td>
 </xsl:template>

   <xsl:template match="Item[@type='Part AML' or @type='Part Document']/related_id[@type='Manufacturer Part']/Item/manufacturer/@keyed_name">
  <td width="13%" align="center" uniqueID="ms__id32">
    <xsl:apply-templates/>
 </td>
</xsl:template>

<xsl:template match="Item[@type='Part AML' or @type='Part Document']/related_id[@type='Manufacturer Part']/Item/item_number">
  <td width="13%" align="center" uniqueID="ms__id33">
    <xsl:apply-templates/>
 </td>
</xsl:template>

<xsl:template match="Item[@type='Part AML' or @type='Part Document']/related_id[@type='Document']/Item/item_number">
   <td width="13%" align="center" uniqueID="ms__id34">
     <xsl:apply-templates/>
   </td>
</xsl:template>

<xsl:template match="Item[@type='Part AML' or @type='Part Document']/related_id[@type='Document']/Item/name">
  <td width="13%" align="center" uniqueID="ms__id35">
    <xsl:apply-templates/>
  </td>
 </xsl:template>
   <xsl:template match="Item[@type='Part AML' or @type='Part Document']/related_id[@type='Document']/Item/major_rev">
   <td width="13%" align="center" uniqueID="ms__id36">
     <xsl:apply-templates/>
   </td>
</xsl:template>

当前输出1 AML和2个文档

      <tr>
        <td width="5%" align="center" uniqueID="ms__id31">Preliminary</td>
        <td width="13%" align="center" uniqueID="ms__id32"></td>
        <td width="13%" align="center" uniqueID="ms__id33"> CRCW04023K30JNED</td>
     </tr>
     <tr>
        <td width="5%" align="center" uniqueID="ms__id31"></td>
        <td width="13%" align="center" uniqueID="ms__id35">Firmware 8-16-12</td>
        <td width="13%" align="center" uniqueID="ms__id36">B</td>
     </tr>
     <tr>
        <td width="5%" align="center" uniqueID="ms__id31"></td>
        <td width="13%" align="center" uniqueID="ms__id35">Design Spec</td>
        <td width="13%" align="center" uniqueID="ms__id36">A</td>
     </tr>

预期产出

<tr>
  <td width="5%" align="center" uniqueID="ms__id31">Preliminary</td>
  <td width="13%" align="center" uniqueID="ms__id32"></td>
  <td width="13%" align="center" uniqueID="ms__id33"> CRCW04023K30JNED</td>
  <td width="13%" align="center" uniqueID="ms__id35">Firmware 8-16-12</td>
  <td width="13%" align="center" uniqueID="ms__id36">B</td>
  <td width="13%" align="center" uniqueID="ms__id35">Design Spec</td>
  <td width="13%" align="center" uniqueID="ms__id36">A</td>
</tr>

0 个答案:

没有答案