XML在链接XSL时显示空白页面

时间:2014-10-30 20:01:02

标签: xml xslt

XML文件:

<?xml version="1.0"  encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="biblio.xsl"?>

<bibliography>
    <entry type="article">
        <title>A History of MOOCs, Open Online Courses</title>
        <author>Jane Karr</author>
        <year>2014</year>
    </entry> 
    <entry type="article">
        <title>Apple Co-Founder Creates Electronic ID Tags</title>
        <author>John Markoff</author>
        <year>2003</year>
    </entry> 
</bibliography>

XSL文件:

<?xml version="1.0"?>

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

<xsl:template match="/">

    <html>
        <body>
            <h2>Bibliography Entries</h2>
            <table border="1">
                <xsl:for-each select="bibliography/entry">
                    <tr>
                        <td><xsl:value-of select="title"/></td>
                        <td><xsl:value-of select="author"/></td>
                        <td><xsl:value-of select="year"/></td>
                    </tr>
                </xsl:for-each>
            </table>
        </body>
    </html>

</xsl:template>
</xsl:stylesheet>

如果我没有将XSLT文件链接到XML文件,我的XML文件将在浏览器的页面中输出树结构,但是如果我链接了XSLT文件,它将显示一个空白页面。

我正在使用Chrome,如果它有助于了解。

感谢。

3 个答案:

答案 0 :(得分:2)

我假设您正在从文件系统加载XML文档,在这种情况下,出于安全原因,Chrome不应用链接的XSLT,除非您使用降低的安全设置启动它。使用F12打开浏览器控制台,检查Chrome是否显示消息,说明未应用Xslt的原因。

答案 1 :(得分:1)

您的代码效果很好。只需启动Chrome,如下所示:

Chrome.exe --allow-file-access-from-files

enter image description here

答案 2 :(得分:1)

如果有人在启动他们的 XML 和 XSLT 文件时仍然有问题 - 现在 Mozzila 也出于安全原因不应用链接的 XSLT - 如果您需要将 privacy.file_unique_origin 中的 about:config 属性更改为 false想要应用您的 XSLT 样式。

对于那些不知道的人 - 要进入 about:config,您只需在 Mozzila 搜索栏中输入即可。