+ -
当前位置:首页 → 问答吧 → 最简单的XML在Firefox中出错

最简单的XML在Firefox中出错

时间:2005-04-20

来源:互联网

在Mozilla出现这个错误:
载入样式表单出错: 分析 XSLT 样式表单失败。
data.xml

QUOTE:
<?xml version="1.0" encoding="GB2312"?>
<?xml-stylesheet type="text/xsl" href="data.xsl"?>

<档案>
<学生 性别="0">
  <姓名>张三</姓名>
  <ID>001</ID>
  <年龄>16</年龄>
  <电话>12345678</电话>
</学生>
<学生 性别="1">
  <姓名>李四</姓名>
  <ID>002</ID>
  <年龄>16</年龄>
  <电话>61689956</电话>
</学生>
</档案>



QUOTE:
data.xsl

<?xml version="1.0" encoding="GB2312" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/TR/WD-xsl">
    <xsl:template match="/">
        <html>
            <head>
                <title>学生档案示范</title>
            </head>
            <body>
    <xsl:apply-templates select="档案" />
            </body>
        </html>
    </xsl:template>

<xsl:template match="档案">
  <table border="2" title="这是一个学生档案示范。" align="center">
  <caption>学生档案示范</caption>
  <tr bgcolor="#FFFFE1">
   <th>姓名</th>
   <th>学号</th>
   <th>年龄</th>
   <th>联系电话</th>
  </tr>
  <xsl:for-each select="学生">
   <tr>
    <td><xsl:value-of select="姓名" /></td>
    <td><xsl:value-of select="ID" /></td>
    <td><xsl:value-of select="年龄" /></td>
    <td><xsl:value-of select="电话" /></td>
   </tr>
  </xsl:for-each>
  </table>
</xsl:template>

</xsl:stylesheet>

data.xsl中间的那行
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/TR/WD-xsl">
修改成
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
就好了,这个有什么讲究吗?

在IE里面都是好的。

作者: ifan   发布时间: 2005-04-20

呵呵,因为IE根本不去管xmlns:xsl啊。

作者: melop   发布时间: 2005-04-21

那么上面的要怎么改才符合 xmlns:xsl="http://www.w3.org/TR/WD-xsl"???
有哪里不对?

作者: ifan   发布时间: 2005-04-21

哦,可能不是这个问题。
你必须设置服务器,把 xsl 和xml 文件类型的mime type发送成“text/xml”才可以。

作者: melop   发布时间: 2005-04-22

谢谢老大!搞定了,呵呵
原来不能直接用浏览器打开,而是要用http://的方式,明白了

多谢多谢

作者: ifan   发布时间: 2005-04-22