以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 XSL/XSLT/XSL-FO/CSS 』  (http://bbs.xml.org.cn/list.asp?boardid=8)
----  小弟有个问题????大哥们进来看看!!!  (http://bbs.xml.org.cn/dispbbs.asp?boardid=8&rootid=&id=39877)


--  作者:adiros
--  发布时间:11/10/2006 12:55:00 PM

--  小弟有个问题????大哥们进来看看!!!
如何将要满足length时长大于3分钟的记录,用红色显示内容记录
cd1.xsl

<?xml version="1.0"  encoding="gb2312"?>
<xsl:stylesheet
 version="1.0"
 xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
 xmlns="http://www.w3.org/TR/REC-html40">


<xsl:template match="/" >
<STYLE>
                <![CDATA[
                BODY,TD,TH{font-size:9pt;FONT-FAMILY: MS She
ll Dlg,Tahoma,sans-serif,宋体;}
                ]]>
</STYLE>
<xsl:apply-templates select="collection/cd" ></xsl:apply-templates>
</xsl:template>

<!--Section2与元素cd相匹配的模板 -->
<xsl:template match="cd" >
    <p align="center">
      <br/>
      <body bgcolor="yellow"></body>
      <font size="+3">
         <xsl:apply-templates select="title" ></xsl:apply-templates>:
         <xsl:apply-templates select="artist" ></xsl:apply-templates>
      </font>
    </p>
    <table width="60%" border="2" align="center">
    
       <tr>
         <th>type</th>
         <th>nam</th>
         <th>length</th>
       </tr>
          
       <xsl:for-each select="tracks/track">
         <xsl:sort select="length" data-type="number"/>
         <xsl:sort select="nam" data-type="text"/>
          <tr>
                <xsl:attribute name="STYLE">
                  COLOR:
                  <xsl:if test="length[.$lt$ '3']">red</xsl:if>
                </xsl:attribute>
              <td>
               <xsl:value-of select="@type"/>
              </td>
              <td>
                  <xsl:value-of select="nam"/>
              </td>
              <td>
                 <xsl:apply-templates select="length" />
              </td>
          </tr>
       </xsl:for-each>
    </table>
    
    <p>
    The artist is <xsl:value-of select="artist" />.
    </p>
    <hr/>
</xsl:template>

<!--Section3与元素title相匹配的模板-->
<xsl:template match="title" >
   <nobr>
      <b>
          <xsl:value-of select="."  />
      </b>
   </nobr>
</xsl:template>

<!--Section3与元素artist相匹配的模板-->
<xsl:template match="artist" >
   <nobr>
      <i>
      <font color="red">
          <xsl:value-of select="."  />
          </font>
      </i>
   </nobr>
</xsl:template>
</xsl:stylesheet>
   
CD.xml  
<?xml version="1.0"?>
<?xml:stylesheet type="text/xsl" href="cd1.xsl" ?>
<collection>
 <cd>
 
<title>Boys for Pele</title>
  <artist>Tori Amos</artist>
  <tracks>
   
   <track type="vocal">
    <nam>Horses</nam>
    <length>3.5</length>
   </track>
   <track type="instrumental">
    <nam>Blood roses</nam>
    <length>3.2</length>
   </track>
   <track type="vocal">
    <nam>Father lucifer</nam>
    <length>3.8</length>
   </track>
   <track type="instrumental">
    <nam>Professional widow</nam>
    <length>4.1</length>
   </track>
   <track type="instrmental">
    <nam>Mr. zebra</nam>
    <length>3.6</length>
   </track>
   <track type="vocal">
    <nam>Marianne</nam>
    <length>3.2</length>
   </track>
   <track type="instrumental">
    <nam>Caught a lite sneeze</nam>
    <length>1.5</length>
   </track>
   <track type="vocal">
    <nam>Muhammad my friend</nam>
    <length>4.2</length>
   </track>
   <track type="instrumental">
    <nam>Hey Jupiter</nam>
    <length>3.5</length>
   </track>
   <track type="instrumental">
    <nam>way down</nam>
    <length>3.1</length>
   </track>
   <track type="vocal">
    <nam>Little Amsterdam</nam>
    <length>2.4</length>
   </track>
   <track type="instrumental">
    <nam>Talula</nam>
    <length>5.5</length>
   </track>
   <track type="instrumental">
    <nam>Not the Red Baron</nam>
    <length>2.3</length>
   </track>
   <track type="vocal">
    <nam>Agent Orange</nam>
    <length>3.1</length>
   </track>
   <track type="instrumental">
    <nam>Doughnut song</nam>
    <length>3.8</length>
   </track>
   <track type="instrumental">
    <nam>In the springtime</nam>
    <length>3.2</length>
   </track>
   <track type="vocal">
    <nam>Putting the damage on</nam>
    <length>3.3</length>
   </track>
   <track type="instrumental">
    <nam>Twinkle</nam>
    <length>3.1</length>
   </track>
  </tracks>
 </cd>
 <cd>
 
<title>The Ghosts that Hunt Me</title>
  <artist>Crash Test Dummies</artist>
  <tracks>
   <track type="vocal">
    <nam>Winter song</nam>
    <length>4.5</length>
   </track>
   <track type="instrumental">
    <nam>Comin' back soon</nam>
    <length>4.1</length>
   </track>
   <track type="instrumental">
    <nam>Superman's song</nam>
    <length>3.5</length>
   </track>
   <track type="vocal">
    <nam>The country life</nam>
    <length>3.3</length>
   </track>
   <track type="instrmental">
    <nam>Here on earth</nam>
    <length>3.8</length>
   </track>
   <track type="instrumental">
    <nam>The ghosts that haunt me </nam>
    <length>3.1</length>
   </track>
   <track type="instrumental">
    <nam>Androgynous</nam>
    <length>3.5</length>
   </track>
   <track type="instrumental">
    <nam>The voyage</nam>
    <length>3.8</length>
   </track>
   <track type="instrumental">
    <nam>At my funeral</nam>
    <length>3.1</length>
   </track>
  </tracks>
 </cd>
</collection>


--  作者:Qr
--  发布时间:11/10/2006 4:53:00 PM

--  
LZ要先了解不同版本的XSLT的区别。
在标准1.0中:
> ==> &gt;
< ==> &lt;

$?$这种方式已经淘汰了。


--  作者:adiros
--  发布时间:11/10/2006 6:03:00 PM

--  
你确认那样改就行/!?!??!??
--  作者:Qr
--  发布时间:11/11/2006 11:54:00 AM

--  
为什么不行!?!?!?!?!?!?!?!?!?!?!?!?!?!?!?!?!?!?!?
有什么不行!?!?!?!?!?!?!?!?!?!?!?!?!?!?!?!?!?!?!?
怎么个不行!?!?!?!?!?!?!?!?!?!?!?!?!?!?!?!?!?!?!?


--  作者:adiros
--  发布时间:11/15/2006 6:14:00 PM

--  
你运行一下啊!大哥!
--  作者:Qr
--  发布时间:11/15/2006 6:30:00 PM

--  
按偶的方法改是没有问题的,除此之外,代码没有任何语法上的错误。至于运行错误,是因为你两个文件的编码不一致,encoding也不同导致的。明白没有!
--  作者:adiros
--  发布时间:11/15/2006 10:01:00 PM

--  
知道了!
比较强的兄弟!
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
93.750ms