如何添加xsl属性

liy*_*ysd 4 xslt attributes image

我有一个带img标签的xml

<img>
source
</img>
Run Code Online (Sandbox Code Playgroud)

我想生成:

<img src="source.jpg">
Run Code Online (Sandbox Code Playgroud)

我试过这样的事情:

<img>
<xsl:attribute name="src">
  <xsl:text>
        <xsl:value-of select="node()" />.jpg
      </xsl:text>
    </xsl:attribute>
</img> 
Run Code Online (Sandbox Code Playgroud)

但它确实有效

Dim*_*hev 5

用途:

<img src="{normalize-space()}.jpg"/>
Run Code Online (Sandbox Code Playgroud)

这假设<img>元素是当前节点.

  • 我最近转换为属性值模板,我认为它们非常有用,适用于简洁易读的代码.我建议所有XSL新手进行调查:http://www.w3.org/TR/xslt#attribute-value-templates (2认同)