XSLT中的子字符串错误
我想知道如果XSLT可以选择删除元素的内容,如果字符超过200.下面我使用所有的内容元素。XSLT中的子字符串错误
警告:XSLTProcessor中:: transformToXml()[xsltprocessor.transformtoxml]:运行时错误:文件stylesheet.xslt线42元件应用的模板中的index.php上线20
警告:XSLTProcessor中:: transformToXml() [xsltprocessor.transformtoxml]:'select'表达式不计算为节点集。在线路20上
<xsl:template match="a:content | description">
<c>
<xsl:apply-templates select="substring('node() | @*', 1, 200)" />
</c>
</xsl:template>
<xsl:apply-templates select="substring('node() | @*', 1, 200)" />
在select
指定的XPath表达式以上属性的index.php,是xs:string
类型。
但是,在XSLT 1.0和XSLT 2.0模板中,只能应用于节点上 - 而不能应用于字符串。这就是为什么你会收到报告的错误信息。
在我看来,你最想的是:
<xsl:value-of select="substring(., 1, 200)" />
谢谢你的回答。 – EnexoOnoma
@mtopia:不客气。 –
嗯...我不太明白你在做什么,但我会通过检查字符串长度接近它在一个if块内部..也许你的解决方案是光滑的(正如我所说的,我不太明白它)... – Aerik
@FailedDev节点是内容|描述。你是这个意思吗 ? – EnexoOnoma