XSLT document() 在 WebKit 浏览器中的使用
我在尝试在 XSL 样式表中包含和访问多个 XML 文档时遇到问题。我将文档节点分配为变量,然后尝试在我的 xsl:template 中访问它们,类似于:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" omit-xml-declaration="yes" />
<xsl:variable name="doc1" select="document('test.xml')" />
<xsl:template match="/">
<div>
<span id="id_total">
<xsl:value-of select="count($doc1//Root)"/>
</span>
</div>
</xsl:template>
</xsl:stylesheet>
我在使用 IE 和 IE 时获得正确的计数。 Firefox,但是任何 WebKit 浏览器(Safari、Chrome)给我的计数都是 0。有什么想法吗?
I'm having an issue when attempting to include and access multiple XML documents in an XSL stylesheet. I'm assigning document nodes as variables and then attempting to access them in my xsl:template, similar to this:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" omit-xml-declaration="yes" />
<xsl:variable name="doc1" select="document('test.xml')" />
<xsl:template match="/">
<div>
<span id="id_total">
<xsl:value-of select="count($doc1//Root)"/>
</span>
</div>
</xsl:template>
</xsl:stylesheet>
I get the correct count when using IE & Firefox, however any WebKit browser (Safari, Chrome) gives me a count of 0. Any thoughts?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
Chrome 有一个跨域策略,可防止包含本地文件。文档函数只能在本地引用自身:
Chrome has a cross-origin-policy that prevents includes of local files. The document function can only reference itself locally:
Google 认为允许 .xml 文件从 file:// URL 读取 .xlst 文件是一个安全漏洞,他们已经阻止了它。
chrome.exe 命令行选项 --allow-file-access-from-files 将规避此安全措施。
Google have decided that allowing the .xml file to read the .xlst file off a file:// URL is a security hole and they have blocked it.
The chrome.exe command line option --allow-file-access-from-files will circumvent this safeguard.