這是我今天學習的時候遇到的另一個問題,做圖像超鏈接要把鏈接地址放到<a>的href屬性中去,可是這就是在標簽中套標簽,是不可以的,查了《Web編程實做教程》,才知道正確的解決方案,現在與大家分享。
此段代碼運行需要兩張圖片:a.gif和b.gif。
my.XML
以下內容為程序代碼:
<?XML version="1.0" encoding="GB2312"?>
<?XML-stylesheet type="text/xsl" href="mystyle.xsl"?>
<Books>
<Book ID="a001">
<Name>網絡指南</Name>
<Photo>a.gif</Photo>
<Homepage>http://www.a.com</Homepage>
</Book>
<Book ID="a002">
<Name>局域網技術</Name>
<Photo>b.gif</Photo>
<Homepage>http://www.b.com</Homepage>
</Book>
</Books>
mystyle.xsl
以下內容為程序代碼:
<?XML version="1.0" encoding="GB2312"?>
<xsl:stylesheet version="1.0" XMLns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="Books/Book">
<xsl:element name="a">
<xsl:attribute name="href">
<xsl:value-of select="./Homepage"/>
</xsl:attribute>
<xsl:element name="img">
<xsl:attribute name="src">
<xsl:value-of select="./Photo"/>
</xsl:attribute>
</xsl:element>
</xsl:element>
<br/>
</xsl:template>
</xsl:stylesheet>
在浏覽器上的顯示結果:
豎向平列顯示兩個圖片。
說明:
使用超鏈接,需要借助<xsl:element>和<xsl:attribute>兩個標簽,基本使用方法就可以參照上邊的例子,在深奧一點的,如果你想出來了,記得要和大家分享喲。
長見識,嘿嘿,這個可是真是第一次看見。
{Homepage}
<xsl:value-of select="Homepage"/>
兩個在任何時候都是等價的吧?
你上邊的代碼和我原來的效果有點小差別,我幫你完善一下:
mystyle.xsl
<?XML version="1.0" encoding="GB2312"?>
<xsl:stylesheet version="1.0" XMLns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="Books/Book">
<a href="{Homepage}">
<img src="{Photo}"/>
</a>
</xsl:template>
</xsl:stylesheet>