2

我正在使用 XSLTproc 处理 XSL+XML-> HTML

在此过程中删除某些信息时遇到问题。

XSL:

<div item="{id}">

正在变成:

HTML:

<div item="">

我需要的结果是:

HTML:

<div item="{id}">

任何想法如何解决/或防止这种情况?

4

3 回答 3

0

您在当前 XSLT 中遇到的问题是它被视为属性值模板。花括号告诉 XSLT 它是一个要评估的表达式,在您的情况下,它将被评估为id元素的值,如果它不存在,它将是空白的。

要从字面上输出<div item="{id}">,您可以执行以下任一操作:

<div item="{'{id}'}">
</div>

或者:

<div>
   <xsl:attribute name="item">{id}</xsl:attribute>
</div>
于 2013-02-19T19:42:08.000 回答
0

您可以在 XSLT 中执行以下操作:

<div>
    <xsl:attribute name="item"><xsl:text>{id}</xsl:text></xsl:attribute>
</div>
于 2013-02-19T19:46:39.667 回答
0

只需加倍{}

XSLT

<div item="{{id}}">

结果

<div item="{id}">
于 2013-02-19T19:50:50.420 回答