我想在名字和姓氏之间显示一个空格,以便输出显示
姓名: Richard Simmons
但是现在,我正在
姓名: RichardSimmons
出于某种原因,我所做的一切都无法在显示屏上添加空间。
我可以发布完整的代码,但我怀疑间距与我在XSLT中调用“apply-templates”的方式有关。
这是显示名称
的XSLT<xsl:template match="scout">
<div style="border-style:solid; width: 60%; margin: 0% 0% 20px 35%;">
<!--NAME-->
<p style="font-weight: bold">
Name: <span style="font-weight: normal"><xsl:apply-templates select="firstName"/></span><!--I want to put a space here-->
<span style="font-weight: normal"><xsl:apply-templates select="lastName"/></span>
</p>
<!-- More stuff-->
</div>
</xsl:template>
<xsl:template match="firstName">
<xsl:value-of select="node()"/>
</xsl:template>
<xsl:template match="lastName">
<xsl:value-of select="node()"/>
</xsl:template>
我尝试过简单地添加空格并包含“&amp; nbsp”但没有成功。
编辑:如果有人感兴趣的相关XML
<bsa>
<council name="Movies">
<troop name="Pixar" number="a113">
<scout>
<firstName>Philip</firstName>
<lastName>Sherman</lastName>
<address>
<street>42 Wallaby Way</street>
<city>Sydney</city>
<state>New South Wales</state>
</address>
<phone>77437626</phone>
<rank date-earned="2004">Eagle</rank>
<meritbadge date-earned="2004">Fish in my hair!</meritbadge>
</scout>
</troop>
</council>
</bsa>
答案 0 :(得分:1)
您可能需要尝试XML-中描述的section about whitespace stripping或XSLT相关功能,以及有关它们的XSLT处理器文档。
另见:
Tricky whitespace handling in XSLT
&#39; HTH,
答案 1 :(得分:1)
要在名字和姓氏之间添加空格,您可以使用 <xsl:text> </xsl:text>
-notice元素内的空格, OR < / strong>, concat()
fe concat(' ', lastName)
, 或 ,您认为合适的两种变体。
<!-- example using xsl:text -->
<xsl:template match="lastName">
<xsl:text> </xsl:text>
<xsl:value-of select="."/>
</xsl:template>
<!-- example using concat() -->
<xsl:template match="lastName">
<xsl:value-of select="concat(' ', .)"/>
</xsl:template>
另外,请注意我在上面显示的两个示例中如何使用.
来引用当前上下文元素。