【发布时间】:2014-09-24 13:55:23
【问题描述】:
我有以下 XML。
<?xml version="1.0" encoding="UTF-8"?>
<root>
<para align="center">BETWEEN</para>
<para columns="1">Column1 data</para>
<para columns="1">Column1 data</para>
<para columns="1">Column1 data</para>
<para columns="2">Column2 data</para>
<para columns="3">Column3 data</para>
<para align="center">AND</para>
<para columns="1">Column1 data</para>
<para columns="1">Column1 data</para>
<para columns="1">Column1 data</para>
<para columns="2">Column2 data</para>
<para columns="3">Column3 data</para>
<para columns="2">Column2 data</para>
<para columns="2">Column2 data</para>
<para columns="2">Column2 data</para>
<para columns="2">Column2 data</para>
<para columns="2">Column2 data</para>
<para columns="2">Column2 data</para>
<para align="center">Between</para>
<para align="center">____________________</para>
</root>
这里实际上我想将 paras 转换为表格列,因为我已经尝试过 XSLT。但这里的问题是,每个段落都会创建一个新表。
这里columns属性说明数据属于哪一列,如果columns="1"表示只有一行一列。如果是columns="2",则表示数据与第2列的内容属于同一行,如果前面有columns="1",则同一行的第1列应该有内容,否则第1列应该留空.
我试过的代码可以在here找到
预期的输出是
<table>
<tr>
<td>Column1 data</td>
<td></td>
<td></td>
</tr>
<tr>
<td>Column1 data</td>
<td></td>
<td></td>
</tr>
<tr>
<td>Column1 data</td>
<td>Column 2 data</td>
<td>Column 3 data</td>
</tr>
</table>
<div class="para align-center">AND</div>
<table>
<tr>
<td>Column1 data</td>
<td></td>
<td></td>
</tr>
<tr>
<td>Column1 data</td>
<td></td>
<td></td>
</tr>
<tr>
<td>Column1 data</td>
<td>Column 2 data</td>
<td>Column 3 data</td>
</tr>
</table>
<table>
<tr>
<td>Column1 data</td>
<td></td>
<td></td>
</tr>
<tr>
<td>Column1 data</td>
<td></td>
<td></td>
</tr>
<tr>
<td>Column1 data</td>
<td>Column 2 data</td>
<td>Column 3 data</td>
</tr>
</table>
<table>
<tr>
<td></td>
<td>Column2 data</td>
<td></td>
</tr>
<tr>
<td></td>
<td>Column 2 data</td>
<td></td>
</tr>
<tr>
<td></td>
<td>Column 2 data</td>
<td></td>
</tr>
<tr>
<td></td>
<td>Column2 data</td>
<td></td>
</tr>
<tr>
<td></td>
<td>Column 2 data</td>
<td></td>
</tr>
<tr>
<td></td>
<td>Column 2 data</td>
<td></td>
</tr>
</table>
<div class="para align-center">BETWEEN</div>
请告诉我如何解决这个问题。
谢谢。
【问题讨论】: