XSL格式问题

时间:2016-11-08 14:14:04

标签: xml xslt

几周以来,我一直在使用XML和XSL。我试图在我的XML中添加一个样式表,但到目前为止它还没有为我工作。

我想在这个XML

中添加一个XSL
<?xml version="1.0" encoding='ISO-8859-1'?>
<?xml-stylesheet href="style2.xsl" type="text/xsl"?>
<RESPONSE>
    <test>Hello
    </test>
    <MULTIPLE>
        <SINGLE>
            <KEY name="id">
                <VALUE>7
                </VALUE>
            </KEY>
            <KEY name="shortname">
                <VALUE>Conociendo SAP 
                </VALUE>
            </KEY>
            <KEY name="fullname">
                <VALUE>Conociendo SAP
                </VALUE>
            </KEY>
            <KEY name="enrolledusercount">
                <VALUE>1125
                </VALUE>
            </KEY>
            <KEY name="idnumber">
                <VALUE>012
                </VALUE>
            </KEY>
            <KEY name="visible">
                <VALUE>1
                </VALUE>
            </KEY>
        </SINGLE>
    </MULTIPLE>
</RESPONSE>

我现在在XSL中拥有的是:

<?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>
       <xsl:apply-templates /> 
  </html>
</xsl:template>

<xsl:template match='RESPONSE'>
<head><title><xsl:value-of select='test' /> (Generado por tienda1-html.xsl)</title></head>
  <body>
    <h1><xsl:value-of select='test' /> </h1>

    <table>
      <tr><th>ID</th><th>Shortname</th><th>Fullname</th></tr>

    </table>
  </body>
</xsl:template>

我很确定我做错了什么,但我需要一些关于XSL的方向,因为这是我第一次使用它。

我试图首先获得<test>标记,但它不起作用。相反,我的网页浏览器上有一个空白页面。

感谢您的帮助和时间!

1 个答案:

答案 0 :(得分:0)

在XSLT中,您生成一个有效的HTML“框架”,包括a.o.表格标题:

<tr><th>ID</th><th>Shortname</th><th>Fullname</th></tr>

您未能包含的内容是表格内容

所以低于上面提到的行:

<xsl:for-each select="MULTIPLE/SINGLE">
  <tr>
    <td><xsl:value-of select="KEY[@name = 'id']/VALUE"/></td>
    <td><xsl:value-of select="KEY[@name = 'shortname']/VALUE"/></td>
    <td><xsl:value-of select="KEY[@name = 'fullname']/VALUE"/></td>
  </tr>
</xsl:for-each>