2017-08-29 151 views
0

以下是我的代码写在XSLT:空白不删除

<FIELD> 
    <ID>ID</ID> 
    <VALUE> 
     <xsl:value-of select="normalize-space(Name)"/> 
    </VALUE> 
</FIELD> 

实际输出:

<FIELD> 
    <ID>ID</ID> 
    <VALUE>  JonSnow </VALUE> 
</FIELD> 

预期输出:

<FIELD> 
    <ID>ID</ID> 
    <VALUE>JonSnow</VALUE> 
</FIELD> 

如何我可以在XSLT的VALUE标记中移除不需要的空间吗?我已经在这里编码normalize-space了?

+0

请告诉我们的投入,使我们可以尝试重现该问题。还要将上下文添加到您的XSLT。 –

+0

实际上,我从java获取$名称并在xslt中为SAP PO显示相同的名称。但在此之后有比较之间的价值,我认为由于价值比较空间不起作用。 – Coder1

+0

恐怕我不知道你的意思。如果您没有提供重现问题的方法,那么没有好的答案是可能的 - 请参阅:[mcve]。 –

回答

0

您可以使用此:

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

    <!-- Identity Transformation --> 
    <xsl:template match="node()|@*"> 
     <xsl:copy> 
      <xsl:apply-templates select="node()|@*"/> 
     </xsl:copy> 
    </xsl:template> 

    <xsl:template match="VALUE"> 
     <xsl:copy> 
      <xsl:value-of select="normalize-space(.)"/> 
     </xsl:copy> 
    </xsl:template> 
</xsl:stylesheet> 
+0

我从来没有在xslt工作过。你能否在我的代码中添加代码并给我工作代码? – Coder1

+0

@ Coder1,因为我不知道您使用的是什么代码,但您可以使用 Rupesh

+0

@ Coder1当您评论您获得变量值时,您可以使用 Rupesh