首先,您不需要“逃避”像\'Talking Out\'
这样的错误,只需使用'Talking Out'
即可。
其次,xsl:sort
指令只能是xsl:apply-templates
或xsl:for-each
说明孩子在XSLT 1.0
三,XSLT样式:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="Agents">
<table>
<xsl:apply-templates>
<xsl:sort select="time" data-type="number" order="descending"/>
</xsl:apply-templates>
</table>
</xsl:template>
<xsl:template match="AgentSales[State='Talking Out']">
<tr>
<xsl:apply-templates/>
</tr>
</xsl:template>
<xsl:template match="AgentSales/*">
<td>
<xsl:value-of select="."/>
</td>
</xsl:template>
<xsl:template match="AgentSales/Reason|AgentSales"/>
</xsl:stylesheet>
有了这个输入:
<Agents>
<AgentSales>
<AgentName>WRIGHT SIMMONS NATHANIEL</AgentName>
<State>Talking Out</State>
<Reason>whatever</Reason>
<time>3</time>
</AgentSales>
<AgentSales>
<AgentName>SOMEONE</AgentName>
<State>Talking In</State>
<Reason>whatever</Reason>
<time>2</time>
</AgentSales>
<AgentSales>
<AgentName>SOMEONE ELSE</AgentName>
<State>Talking Out</State>
<Reason>whatever</Reason>
<time>5</time>
</AgentSales>
</Agents>
输出:
<table>
<tr>
<td>SOMEONE ELSE</td>
<td>Talking Out</td>
<td>5</td>
</tr>
<tr>
<td>WRIGHT SIMMONS NATHANIEL</td>
<td>Talking Out</td>
<td>3</td>
</tr>
</table>
“\”在那里,因为这是更大的PHP脚本的一部分。我会排除一下,看看我能得到什么。 – Denoteone 2010-12-09 17:04:16