1

我有一个 XML(这里我只展示了一个片段,它有几个 Control 元素,

  <Control Name="submit" ID="">
  <Properties>
    <Property Name="id" Value="btn_Submit" />
    <Property Name="value" Value="Submit" />
  </Properties>
  </Control>

我想将html作为

<html>
 <head>
  <title>example_htmlPage</title>
 </head>

 <body>
  <input id="btn_Submit" type="submit" value="Submit"/>
 </body>
</html>                    

通过使用 XSLT。我写了一个 XSLT

 <?xml version="1.0" encoding="ISO-8859-1"?>
 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 <xsl:template match="/">
  <html> 
     <head>
        <title>example_htmlPage</title>
     </head>

     <body>
        <xsl:apply-templates/>
     </body>
  </html>
 </xsl:template>
 <xsl:template match="/">
     <xsl:for-each select="//Control[@Name='submit']">
       <input type="submit" value="//Property/@Value/text()"/>
     </xsl:for-each>
  <xsl:apply-templates/>
 </xsl:template>
 </xsl:stylesheet> 

所以,我的问题是如何将属性的值放入 HTML 标记中?我无法通过创建局部变量以及使用来解决它

  <input type="submit" value=&lt;xsl:select="(//Property/@Value/text())"/&gt;/>

请帮我。

4

1 回答 1

1

用于<xsl:attribute>向标签添加属性:

<input type="submit">
    <xsl:attribute name="value"><xsl:value-of select="./Properties/Property[@Name='value']/@Value" /></xsl:attribute>
</input>
于 2013-05-03T11:20:30.507 回答