【问题标题】:XSL stylesheet active content being blocked by browserXSL 样式表活动内容被浏览器阻止
【发布时间】:2015-09-06 00:32:50
【问题描述】:

您好,我有一个用于转换 XML 文档的 XSL 样式表,请参阅SO Question 转换效果很好,当用户单击节点时,树视图会展开和折叠,就像宣传的那样。但是在我运行它的一些客户端机器上禁用了活动内容(IE8/9),消息是

IE 已限制此文件显示活动内容...

点击允许被阻止的内容很简单...但是在有问题的机器上不能(绝对)必须不是完毕。这是禁止的。我无法更改浏览器设置 我的问题是如何在不更改浏览器设置的情况下解决此问题。

我可以在“服务器端”进行转换,基本上使用 lxml 来转换 XML 之类的东西

import lxml.etree as ET
dom = ET.parse(xml_filename)
xslt = ET.parse(xsl_filename)
transform = ET.XSLT(xslt)
newdom = transform(dom)
print(ET.tostring(newdom, pretty_print=True))

这是否允许在客户端机器上显示的结果 xml 保持动态? 我需要启动一个小的 python 网络服务器吗? 欢迎任何建议

【问题讨论】:

  • 从 http 提供,而不是文件
  • 好的,你能告诉我这到底是什么意思吗?我怎样才能从http“服务”xml和xsl?假设对网站、html、javascript、网络服务器的工作方式有非常基本的了解。循序渐进就好了
  • 最基本的,在windows中设置IIS>控制>程序>打开和关闭窗口的功能,把你的文件复制到你选择的www_root,然后访问localhost://filename.html。谷歌“简单的 http 服务器”以获得大量更具体的演练。
  • 啊,谢谢,虽然在这种情况下我无法更改浏览器设置,更不用说绕过客户端机器打开和关闭 Windows 功能了。但是你的说法听起来像是我应该考虑在我的应用程序中嵌入一个可以提供 xml/xsl 文件的网络服务器,因为我倾向于使用 Python,我认为 SimpleHTTPServer 是你的建议所引导的地方?

标签: javascript css xml internet-explorer xslt


【解决方案1】:

我的问题是如何在不更改浏览器设置的情况下解决这个问题。

使用独立的样式表。例如:

<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="html5.xml"?>
<xsl:stylesheet version="1.0"
                xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                xmlns="http://www.w3.org/1999/xhtml"
                >
<xsl:output method="xml" encoding="utf-8" version="" indent="yes" standalone="no" media-type="text/html" omit-xml-declaration="no" doctype-system="about:legacy-compat" />

<xsl:template match="xsl:stylesheet">
  <xsl:apply-templates/>
</xsl:template>

<xsl:template match="/">
  <html>
    <head>
      <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
    </head>
    <body>
      These<br/>words<br/>are<br/>seperated<br/>by<br/>BRs
    </body>
  </html>
</xsl:template>

</xsl:stylesheet>

此独立样式表在保存为 html5.xml 时有效。

参考文献

【讨论】:

    猜你喜欢
    • 2018-12-04
    • 2013-05-06
    • 2019-07-29
    • 2017-06-18
    • 1970-01-01
    • 2013-04-19
    • 2015-07-25
    • 1970-01-01
    • 2012-12-25
    相关资源
    最近更新 更多