如何使用xsl在一个标题下创建我的两个标签

时间:2017-11-06 03:38:46

标签: xml xslt

这里有新手,我们正在学习xml和xsl。 我们得到了一张桌子,然后把它变成了xml。 但是,我对xsl有点问题。

我创建了这个xml

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<?xml-stylesheet type="text/xsl" href="items.xsl" ?>

<sales>
    <sale>
        <id>1027</id>
        <firstName>Elaine</firstName>
        <lastName>Conner</lastName>
        <street>Ap #177-657 Pede Avenue</street>
        <city>Miller</city>
        <postCode>2143</postCode>
        <salesQuantity>100</salesQuantity>
        <productId>p101</productId>
    </sale>
    <sale>
        <id>1105</id>
        <firstName>Shelby</firstName>
        <lastName>Hinton</lastName>
        <street>P.O. Box 551, 5296 Penatibus Rd</street>
        <city>Granville</city>
        <postCode>2142</postCode>
        <salesQuantity>75</salesQuantity>
        <productId>p201</productId>
    </sale>
    <sale>
        <id>1122</id>
        <firstName>Bryar</firstName>
        <lastName>Weiss</lastName>
        <street>P.O. Box 511, 5053 Ac Avenue</street>
        <city>Campsie</city>
        <postCode>2153</postCode>
        <salesQuantity>150</salesQuantity>
        <productId>p105</productId>
    </sale>

我的标题是 ID,名称,地址,产品名称,销售数量

如何将firstName和lastName放在名称下的同一个头文件中? 我遇到了第二个td标签,因为我不知道如何将firstName和lastName放在同一个标​​题中?

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

    <xsl:template match="/">
        <html>
            <head>
                <title>Sales Department</title>
            </head>
            <body>
                <h1>Sales Department Details</h1>
                <table>
                    <tr>
                        <th>ID</th>
                        <th>Name</th>
                        <th>Address</th>
                        <th>Product Name</th>
                        <th>Sales Quantity</th>
                        <th>Sales Value</th>
                    </tr>

                    <xsl:for-each select="sales/sale">
                    <tr>
                        <td><xsl:value-of select="id" /></td>
                        <td><xsl:value-of select="firstName &#160" /></td>
                    </tr>
                    </xsl:for-each>
                </table>
            </body>
        </html>
    </xsl:template>
</xsl:stylesheet>

提前感谢您的帮助

1 个答案:

答案 0 :(得分:0)

您可以使用concat()的{​​{1}}功能在同一XSLT内连接firstNamelastName。此处<td>firstNamelastName分隔。语法如下。

space