xsl如何合并相同内容
想得到这样的XML:
- <html>
- <dailys>
- <daily>
<daily_no>1</daily_no>
<date>2010/03/24</date>
<member>A</member>
- <myworkList>
- <mywork>
<mywork_no>1</mywork_no>
<work>SSSSS</work>
</mywork>
- <mywork>
<mywork_no>0</mywork_no>
<work>FFFFFFFFFF</work>
</mywork>
</myworkList>
</daily>
</dailys>
</html>
所以写了如下xls:
<?xml version="1.0" encoding="Shift_JIS" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<dailys>
<xsl:for-each select="root/t_daily">
<xsl:sort select="daily_no" data-type="number" order="ascending"/>
<daily>
<xsl:element name="daily_no"><xsl:value-of select="@daily_no"/></xsl:element>
<xsl:element name="date"><xsl:value-of select="@date"/></xsl:element>
<xsl:element name="member"><xsl:value-of select="@member"/></xsl:element>
<myworkList>
<xsl:for-each select="t_mywork">
<xsl:sort select="number(@mywork_no)" data-type="number" order="ascending"/>
<xsl:if test="number(@mywork_no) >= 0">
<mywork>
<xsl:element name="mywork_no"><xsl:value-of select="@mywork_no"/></xsl:element>
<xsl:element name="work"><xsl:value-of select="@work"/></xsl:element>
</mywork>
</xsl:if>
</xsl:for-each>
</myworkList>
</daily>
</xsl:for-each>
</dailys>
</html>
</xsl:template>
</xsl:stylesheet>
可结果出来的XML却是:
- <html>
- <dailys>
- <daily>
<daily_no>1</daily_no>
<date>2010/03/24</date>
<member>A</member>
- <myworkList>
- <mywork>
<mywork_no>1</mywork_no>
<work>SSSSS</work>
</mywork>
</myworkList>
</daily>
- <daily>
<daily_no>1</daily_no>
<date>2010/03/24</date>
<member>A</member>
- <myworkList>
- <mywork>
<mywork_no>0</mywork_no>
<work>FFFFFFFFFF</work>
</mywork>
</myworkList>
</daily>
</dailys>
</html>
请教问题出在哪里??
[解决办法]
有什么问题,你的源XML文件是什么样的?