2015-10-22 64 views
0

我有一個簡單的查詢...這裏要做的是在「由...開發」列中的所有行中顯示'name'變量值。這是我的下面的xml和xslt。任何人都可以告訴我什麼是我需要用來拉變量值並將其放置在所有行中的xslt表達式,類似。使用XSLT將默認值分配給列

謝謝。

<?xml version="1.0" encoding="UTF-8"?> 
    <catalog> 
     <cd> 
      <title>Empire Burlesque</title> 
      <artist>Bob Dylan</artist> 
      <country>USA</country> 
      <company>Columbia</company> 
      <price>10.90</price> 
      <year>1985</year> 
     </cd> 
     <cd> 
      <title>Hide your heart</title> 
      <artist>Bonnie Tyler</artist> 
      <country>UK</country> 
      <company>CBS Records</company> 
      <price>9.90</price> 
      <year>1988</year> 
     </cd> 
     <cd> 
      <title>Greatest Hits</title> 
      <artist>Dolly Parton</artist> 
      <country>USA</country> 
      <company>RCA</company> 
      <price>9.90</price> 
      <year>1982</year> 
     </cd> 
     <cd> 
      <title>Still got the blues</title> 
      <artist>Gary Moore</artist> 
      <country>UK</country> 
      <company>Virgin records</company> 
      <price>10.20</price> 
      <year>1990</year> 
     </cd> 
     <cd> 
      <title>Eros</title> 
      <artist>Eros Ramazzotti</artist> 
      <country>EU</country> 
      <company>BMG</company> 
      <price>9.90</price> 
      <year>1997</year> 
     </cd> 
     <cd> 
      <title>One night only</title> 
      <artist>Bee Gees</artist> 
      <country>UK</country> 
      <company>Polydor</company> 
      <price>10.90</price> 
      <year>1998</year> 
     </cd> 
     <cd> 
      <title>Sylvias Mother</title> 
      <artist>Dr.Hook</artist> 
      <country>UK</country> 
      <company>CBS</company> 
      <price>8.10</price> 
      <year>1973</year> 
     </cd> 
     <cd> 
      <title>Maggie May</title> 
      <artist>Rod Stewart</artist> 
      <country>UK</country> 
      <company>Pickwick</company> 
      <price>8.50</price> 
      <year>1990</year> 
     </cd> 
     <cd> 
      <title>Romanza</title> 
      <artist>Andrea Bocelli</artist> 
      <country>EU</country> 
      <company>Polydor</company> 
      <price>10.80</price> 
      <year>1996</year> 
     </cd> 
     <cd> 
      <title>When a man loves a woman</title> 
      <artist>Percy Sledge</artist> 
      <country>USA</country> 
      <company>Atlantic</company> 
      <price>8.70</price> 
      <year>1987</year> 
     </cd> 
     <cd> 
      <title>Black angel</title> 
      <artist>Savage Rose</artist> 
      <country>EU</country> 
      <company>Mega</company> 
      <price>10.90</price> 
      <year>1995</year> 
     </cd> 
     <cd> 
      <title>1999 Grammy Nominees</title> 
      <artist>Many</artist> 
      <country>USA</country> 
      <company>Grammy</company> 
      <price>10.20</price> 
      <year>1999</year> 
     </cd> 
     <cd> 
      <title>For the good times</title> 
      <artist>Kenny Rogers</artist> 
      <country>UK</country> 
      <company>Mucik Master</company> 
      <price>8.70</price> 
      <year>1995</year> 
     </cd> 
     <cd> 
      <title>Big Willie style</title> 
      <artist>Will Smith</artist> 
      <country>USA</country> 
      <company>Columbia</company> 
      <price>9.90</price> 
      <year>1997</year> 
     </cd> 
     <cd> 
      <title>Tupelo Honey</title> 
      <artist>Van Morrison</artist> 
      <country>UK</country> 
      <company>Polydor</company> 
      <price>8.20</price> 
      <year>1971</year> 
     </cd> 
     <cd> 
      <title>Soulsville</title> 
      <artist>Jorn Hoel</artist> 
      <country>Norway</country> 
      <company>WEA</company> 
      <price>7.90</price> 
      <year>1996</year> 
     </cd> 
     <cd> 
      <title>The very best of</title> 
      <artist>Cat Stevens</artist> 
      <country>UK</country> 
      <company>Island</company> 
      <price>8.90</price> 
      <year>1990</year> 
     </cd> 
     <cd> 
      <title>Stop</title> 
      <artist>Sam Brown</artist> 
      <country>UK</country> 
      <company>A and M</company> 
      <price>8.90</price> 
      <year>1988</year> 
     </cd> 
     <cd> 
      <title>Bridge of Spies</title> 
      <artist>T`Pau</artist> 
      <country>UK</country> 
      <company>Siren</company> 
      <price>7.90</price> 
      <year>1987</year> 
     </cd> 
     <cd> 
      <title>Private Dancer</title> 
      <artist>Tina Turner</artist> 
      <country>UK</country> 
      <company>Capitol</company> 
      <price>8.90</price> 
      <year>1983</year> 
     </cd> 
     <cd> 
      <title>Midt om natten</title> 
      <artist>Kim Larsen</artist> 
      <country>EU</country> 
      <company>Medley</company> 
      <price>7.80</price> 
      <year>1983</year> 
     </cd> 
     <cd> 
      <title>Pavarotti Gala Concert</title> 
      <artist>Luciano Pavarotti</artist> 
      <country>UK</country> 
      <company>DECCA</company> 
      <price>9.90</price> 
      <year>1991</year> 
     </cd> 
     <cd> 
      <title>The dock of the bay</title> 
      <artist>Otis Redding</artist> 
      <country>USA</country> 
      <company>Atlantic</company> 
      <price>7.90</price> 
      <year>1987</year> 
     </cd> 
     <cd> 
      <title>Picture book</title> 
      <artist>Simply Red</artist> 
      <country>EU</country> 
      <company>Elektra</company> 
      <price>7.20</price> 
      <year>1985</year> 
     </cd> 
     <cd> 
      <title>Red</title> 
      <artist>The Communards</artist> 
      <country>UK</country> 
      <company>London</company> 
      <price>7.80</price> 
      <year>1987</year> 
     </cd> 
     <cd> 
      <title>Unchain my heart</title> 
      <artist>Joe Cocker</artist> 
      <country>USA</country> 
      <company>EMI</company> 
      <price>8.20</price> 
      <year>1987</year> 
     </cd> 
    </catalog> 









     <?xml version="1.0" encoding="UTF-8"?> 

    <xsl:stylesheet version="1.0" 
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 

    <xsl:variable name="name" value="NAV"/> 
    <xsl:template match="/"> 
     <html> 
     <body> 
     <h2>My CD Collection</h2> 
     <table border="1"> 
     <tr bgcolor="#9acd32"> 
      <th>Title</th> 
      <th>Artist</th> 
      <th>Developed by</th> 
     </tr> 
     <xsl:for-each select="catalog/cd"> 
     <tr> 
      <td><xsl:value-of select="title"/></td> 
      <td><xsl:value-of select="artist"/></td> 
     </tr> 
     </xsl:for-each> 
     </table> 
     </body> 
     </html> 
    </xsl:template> 

    </xsl:stylesheet> 

回答

1

替換此:

<tr> 
     <td><xsl:value-of select="title"/></td> 
     <td><xsl:value-of select="artist"/></td> 
    </tr> 

與此:

<tr> 
     <td><xsl:value-of select="title"/></td> 
     <td><xsl:value-of select="artist"/></td> 
     <td><xsl:value-of select="{$name}"/></td> 
    </tr>