我不确定这是否是错误,或者这只是XSLT排序的工作原理。
当我执行以下操作时:
<xsl:apply-templates select="//*[@id<=50000]">
<xsl:sort select="@id" />
</xsl:apply-templates>
结果不会被分类,就好像它们是数字一样。
例如,我会得到以下结果:
@id 0
@id 1
@id -1
@id 100
@id -100
@id 12345
@id 2
@id -2
@id 200
etc..
但我希望结果如下:
@id -100
@id -2
@id -1
@id 0
@id 1
@id 2
@id 100
@id 200
@id 12345
etc..
如何以数字方式处理结果?
我知道number()可以将字符串转换为数字,但我不知道在这种情况下如何使用它。
对于我可以采取哪些措施来解决这个问题,我们将不胜感激:)