Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
XSLT将新行转换为<;br/>;_Xslt_Xslt 1.0 - Fatal编程技术网

XSLT将新行转换为<;br/>;

XSLT将新行转换为<;br/>;,xslt,xslt-1.0,Xslt,Xslt 1.0,我不能让它工作。我已经看过所有关于堆栈溢出的示例,并且理解xslt代码。但出于某种原因,它正在替换我的空格字符,而不是新行 <t>Line1 Is here Line2 Is another Line3 Is some more </t> 看到我的例子了吗 它似乎正在替换空格字符,而不是新的行字符。这是webkit中的一个已知问题,它会影响Safari和Chrome。详情如下: 不久前我自己也问了一个类似的问题:这是webkit中的一个已知问题,它会影响Saf

我不能让它工作。我已经看过所有关于堆栈溢出的示例,并且理解xslt代码。但出于某种原因,它正在替换我的空格字符,而不是新行

<t>Line1 Is here 
Line2 Is another 
Line3 Is some more 
</t> 
看到我的例子了吗


它似乎正在替换空格字符,而不是新的行字符。

这是webkit中的一个已知问题,它会影响Safari和Chrome。详情如下:


不久前我自己也问了一个类似的问题:

这是webkit中的一个已知问题,它会影响Safari和Chrome。详情如下:

不久前我自己也问了一个类似的问题:

我无法重现这个问题。只需复制和粘贴提供的XML文档和XSLT转换,然后在XML文档上运行转换,我得到这个结果:Line1在这里
Line2是另一个
Line3是更多的

浏览器显示是这样的:Line1在这里
Line2是另一个
Line3是更多的

我在我的计算机上安装的所有11个XSLT处理器都得到了相同的结果:MSXML 3/4/6、.NET XSLT CompiledTransform和.NET XslTransform,AltovaXML(XML-SPY)、Saxon 6.5.4、Saxon 9.1.07、Saxon 9.1.07 for.NET、AltovaXML for XSLT 2。我无法重现这个问题。只需复制和粘贴提供的XML文档和XSLT转换,然后在XML文档上运行转换,我得到这个结果:Line1在这里
Line2是另一个
Line3是更多的

浏览器显示是这样的:Line1在这里
Line2是另一个
Line3是更多的

我在我的计算机上安装的所有11个XSLT处理器都得到了相同的结果:MSXML 3/4/6、.NET XSLT CompiledTransform和.NET XslTransform,AltovaXML(XML-SPY),Saxon 6.5.4,Saxon 9.1.07,Saxon 9.1.07用于.NET,AltovaXML用于XSLT 2。
<xsl:stylesheet version="1.0"  
 xmlns:xsl="http://www.w3.org/1999/XSL/Transform">  
 <xsl:output omit-xml-declaration="yes" indent="yes"/>  
 <xsl:template match="t">  
  <p>  
    <xsl:apply-templates/>  
  </p>  
 </xsl:template>  

 <xsl:template match="text()" name="insertBreaks">  
   <xsl:param name="pText" select="."/>  

   <xsl:choose>  
     <xsl:when test="not(contains($pText, '&#xA;'))">  
       <xsl:copy-of select="$pText"/>  
     </xsl:when>  
     <xsl:otherwise>  
       <xsl:value-of select="substring-before($pText, '&#xA;')"/>  
       <br />  
       <xsl:call-template name="insertBreaks">  
         <xsl:with-param name="pText" select=  
           "substring-after($pText, '&#xA;')"/>  
       </xsl:call-template>  
     </xsl:otherwise>  
   </xsl:choose>  
 </xsl:template>  
</xsl:stylesheet> 
Line1 
Is 
here Line2 
Is 
another Line3 
Is 
some 
more