以文本方式查看主题

-  计算机科学论坛  (http://bbs.xml.org.cn/index.asp)
--  『 XSL/XSLT/XSL-FO/CSS 』  (http://bbs.xml.org.cn/list.asp?boardid=8)
----  求助,xml里面的<br/>能在输出后换行么?  (http://bbs.xml.org.cn/dispbbs.asp?boardid=8&rootid=&id=13858)


--  作者:菜籽
--  发布时间:1/20/2005 12:22:00 PM

--  求助,xml里面的<br/>能在输出后换行么?
我的xml文件中有<br/>字符,我想用xslt转换后能够换行,不知能不能实现,请高手指点!谢谢

<TextBlock><![CDATA[下面程序的运行结果是 &lt;br /&gt;char c[5] ={‘a’,’b’,’\0’,’\c’,’\0’}; &lt;br /&gt;printf(“%s”,c); &lt;br /&gt;
]]></TextBlock>
每次输出到页面上都是下面程序的运行结果是 <br />char c[5] ={‘a’,’b’,’\0’,’\c’,’\0’}; &lt;br /&gt;printf(“%s”,c);<br />
并不换行啊!
将< 和 > 换成转义字符结果一样啊



--  作者:hyl_fr
--  发布时间:1/20/2005 12:53:00 PM

--  
是<br/>吧,中间没有空格吧
--  作者:菜籽
--  发布时间:1/20/2005 1:12:00 PM

--  
有没有好像不影响啊
--  作者:sam
--  发布时间:1/20/2005 1:24:00 PM

--  

 <xsl:value-of select="TextBlock" disable-output-escaping="yes"/>
--  作者:菜籽
--  发布时间:1/20/2005 1:43:00 PM

--  
谢谢sam大哥,谢谢
--  作者:菜籽
--  发布时间:1/20/2005 2:01:00 PM

--  
一个简单的文件可以啊:
1.xml
<?xml version="1.0" encoding="GBK"?>
<?xml-stylesheet type="text/xsl" href="1.xsl"?>
<TextBlock>
<![CDATA[下面程序的运行结果是 <br />char c[5] ={‘a’,’b’,’\0’,’\c’,’\0’}; <br />printf(“%s”,c); <br />]]>
</TextBlock>
1.xsl
<?xml version="1.0" encoding="gb2312"?>

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"  indent="no"/>
<xsl:template match="/">   
  <body>
  <xsl:value-of select="TextBlock" disable-output-escaping="yes"/>
  </body>  
</xsl:template>
</xsl:stylesheet>
可是我的xml文件很长啊,就不知怎么不行啊!一时看不出哪的错误
xml 和xsl文件在下面:


--  作者:菜籽
--  发布时间:1/20/2005 2:02:00 PM

--  
xml文件:TestAll.xml
<?xml version="1.0" encoding="GBK"?>
<?xml-stylesheet type="text/xsl" href="TestAll.xsl"?>
<TestPaper>
<Choice>
<Question  NO="1" ID="001" ZTMXH="0" KMDM="CCSJ0" TMLX="XZ0">
 <QuestionPart XH="1">
  <TextBlock><![CDATA[下面程序的运行结果是 &lt;br /&gt;char c[5] ={‘a’,’b’,’\0’,’\c’,’\0’}; &lt;br /&gt;printf(“%s”,c); &lt;br /&gt;
]]></TextBlock>  
 </QuestionPart>
 <AnswerPart XH="2" b_zqda="false" b_yc="false">
  <TextBlock><![CDATA[1.1.1 ]]></TextBlock>  
 </AnswerPart>
 <AnswerPart XH="3" b_zqda="false" b_yc="false">
  <TextBlock><![CDATA[1.1.2 ]]></TextBlock>  
 </AnswerPart>
 <AnswerPart XH="4" b_zqda="false" b_yc="false">
  <TextBlock><![CDATA[11答案3文本 ]]></TextBlock>  
 </AnswerPart>
 <AnswerPart XH="5" b_zqda="true" b_yc="false">
  <TextBlock><![CDATA[11答案4&lt;br /&gt;文本 ]]></TextBlock>  
 </AnswerPart>
</Question >
<Question NO="2" ID="002" ZTMXH="0" KMDM="CCSJ0" TMLX="XZ0">
 <QuestionPart XH="1">
  <TextBlock><![CDATA[题干文本*a>&b,c<d,e>f,<@#%%^&&**)()(*&^%$#]]></TextBlock>  
 </QuestionPart>
 <AnswerPart XH="2" b_zqda="false" b_yc="false">
  <TextBlock><![CDATA[ 缩短发22答案1文本 ]]></TextBlock>  
 </AnswerPart>
 <AnswerPart XH="3" b_zqda="false" b_yc="false">
  <TextBlock><![CDATA[讯22答案2文本 ]]></TextBlock>  
 </AnswerPart>
 <AnswerPart XH="4" b_zqda="false" b_yc="false">
  <TextBlock><![CDATA[选择22答案3文本 ]]></TextBlock>  
 </AnswerPart>
 <AnswerPart XH="5" b_zqda="true" b_yc="false">
  <TextBlock><![CDATA[1.2.4 ]]></TextBlock>  
 </AnswerPart>
</Question>
</Choice>
<Blank>
<Question NO="1" ID="001" ZTMXH="0" KMDM="CCSJ0" TMLX="XZ0">
<QuestionPart XH="1">
 <TextBlock><![CDATA[填空题的题干1]]></TextBlock>  
</QuestionPart>
 <AnswerPart XH="2" b_zqda="false" b_yc="false">
  <TextBlock><![CDATA[2.1.1 ]]></TextBlock>  
 </AnswerPart>
</Question>
<Question NO="2" ID="001" ZTMXH="0" KMDM="CCSJ0" TMLX="XZ0">
<QuestionPart>
  <TextBlock><![CDATA[第2题填空题的题干2]]></TextBlock>  
</QuestionPart>
 <AnswerPart XH="2" b_zqda="false" b_yc="true">
  <TextBlock><![CDATA[填空答案1文本 ]]></TextBlock>  
 </AnswerPart>
 <AnswerPart XH="3" b_zqda="false" b_yc="true">
  <TextBlock><![CDATA[2.2.2 ]]></TextBlock>  
 </AnswerPart>
</Question>
</Blank>
</TestPaper>


--  作者:菜籽
--  发布时间:1/20/2005 2:02:00 PM

--  
xsl文件:TestAll.xsl
<?xml version="1.0" encoding="gb2312"?>

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"  indent="no"/>
<xsl:template match="/">
  
  <body>
  <xsl:apply-templates select="TestPaper"/>
  </body>
  
</xsl:template>

<xsl:template match="TestPaper">
  <xsl:apply-templates select="Choice"/>
  <xsl:apply-templates select="Blank"/>
</xsl:template>

<xsl:template match="Choice">
一.选择题<br/><br/>
<xsl:apply-templates select="Question"/>
</xsl:template>

<xsl:template match="Blank">
二.填空题<br/><br/>
<xsl:for-each select="Question">
  <xsl:value-of select="@NO"/>.
  <xsl:for-each select="QuestionPart">
   <xsl:for-each select="TextBlock">
   <xsl:value-of select="." disable-output-escaping="yes"/><br/>   
   </xsl:for-each>
  </xsl:for-each>

  <xsl:for-each select="AnswerPart">
   <xsl:variable name="name">tiankong_<xsl:value-of select="../@ID"/></xsl:variable>
   <xsl:variable name="value">_<xsl:value-of select="@XH"/></xsl:variable>
   答案<xsl:number value = "position()" format = "1:"/> 
   <input type="text" name="{$name}{$value}" size="30" value=""/><br/> 
</xsl:for-each><br/>
</xsl:for-each>
<br/>
</xsl:template>

<xsl:template match="Question">
  <xsl:variable name="temp">choose_<xsl:value-of select="@ID"/></xsl:variable>
  <input type="radio" name="{$temp}" style="display:none" value="nothing" checked="true"/>
  <xsl:value-of select="@NO"/>.
  <xsl:apply-templates select="QuestionPart"/>
  <xsl:apply-templates select="AnswerPart"/>
  <br/>
</xsl:template>

<xsl:template match="QuestionPart">
   <xsl:for-each select="TextBlock">
   <xsl:value-of select="." disable-output-escaping="yes"/><br/>   
  </xsl:for-each>
</xsl:template>

<xsl:template match="AnswerPart">
  <xsl:variable name="name">choose_<xsl:value-of select="../@ID"/></xsl:variable>  
  <xsl:variable name="value"><xsl:value-of select="@XH"/></xsl:variable>
  <input type="radio" name="{$name}" value="{$value}"/>
  <xsl:number value = "position()" format = "A  "/> 
  <xsl:for-each select="TextBlock">      
   <xsl:value-of select="." disable-output-escaping="yes"/><br/>      
  </xsl:for-each>
</xsl:template>
</xsl:stylesheet>

输出结果中产生<br/>不换行啊,再次麻烦sam大哥帮忙啊


W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
7,828.125ms