这是我今天学习的时候碰到的另一个问题,做图像超链接要把链接地址放到%26lt;a%26gt;的href属性中去,可是这就是在标签中套标签,是不可以的,查了《Web编程实做教程》,才知道正确的解决方案,现在与大家分享。
此段代码运行需要两张图片a.gif和b.gif。
my.xml
以下内容为程序代码:
%26lt;?xml version="1.0" encoding="GB2312"?%26gt;
%26lt;?xml-stylesheet type="text/xsl" href="mystyle.xsl"?%26gt;
%26lt;Books%26gt;
%26lt;Book ID="a001"%26gt;
%26lt;Name%26gt;网络指南%26lt;/Name%26gt;
%26lt;Photo%26gt;a.gif%26lt;/Photo%26gt;
%26lt;Homepage%26gt;http://www.a.com%26lt;/Homepage%26gt;
%26lt;/Book%26gt;
%26lt;Book ID="a002"%26gt;
%26lt;Name%26gt;局域网技术%26lt;/Name%26gt;
%26lt;Photo%26gt;b.gif%26lt;/Photo%26gt;
%26lt;Homepage%26gt;http://www.b.com%26lt;/Homepage%26gt;
%26lt;/Book%26gt;
%26lt;/Books%26gt;
mystyle.xsl
以下内容为程序代码:
%26lt;?xml version="1.0" encoding="GB2312"?%26gt;
%26lt;xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"%26gt;
%26lt;xsl:template match="Books/Book"%26gt;
%26lt;xsl:element name="a"%26gt;
%26lt;xsl:attribute name="href"%26gt;
%26lt;xsl:value-of select="./Homepage"/%26gt;
%26lt;/xsl:attribute%26gt;
%26lt;xsl:element name="img"%26gt;
%26lt;xsl:attribute name="src"%26gt;
%26lt;xsl:value-of select="./Photo"/%26gt;
%26lt;/xsl:attribute%26gt;
%26lt;/xsl:element%26gt;
%26lt;/xsl:element%26gt;
%26lt;br/%26gt;
%26lt;/xsl:template%26gt;
%26lt;/xsl:stylesheet%26gt;
在浏览器上的显示结果
竖向平列显示两个图片。
说明
使用超链接,需要借助%26lt;xsl:element%26gt;和%26lt;xsl:attribute%26gt;两个标签,基本使用方法就可以参照上边的例子,在深奥一点的,假如你想出来了,记得要和大家分享哟。
长见识,嘿嘿,这个可是真是第一次看见。
{Homepage}
%26lt;xsl:value-of select="Homepage"/%26gt;
两个在任何时候都是等价的吧?
你上边的代码和我原来的效果有点小差别,我帮你完善一下
mystyle.xsl
%26lt;?xml version="1.0" encoding="GB2312"?%26gt;
%26lt;xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"%26gt;
%26lt;xsl:template match="Books/Book"%26gt;
%26lt;a href="{Homepage}"%26gt;
%26lt;img src="{Photo}"/%26gt;
%26lt;/a%26gt;
%26lt;/xsl:template%26gt;
%26lt;/xsl:stylesheet%26gt;
