在离线应用程序上使用Javascript读取Xml?

时间:2011-11-09 12:40:50

标签: javascript html xml

在我看来,为了让javascript读取xml文档,它必须托管在Web服务器上。它不会读取xml doc,否则,有什么方法可以在离线应用程序上使用javascript读取xml文档,例如我桌面上的html页面?任何帮助都会非常感谢你。

2 个答案:

答案 0 :(得分:0)

回过头来,不一定在现代浏览器中工作XML可以加载到HTML文档中的XML数据岛中,并由客户端XMLDOM操作。这在您可以预测Microsoft浏览器和平台的环境中才真正可行。请参阅此处http://msdn.microsoft.com/en-us/library/windows/desktop/ms766512(v=vs.85).aspxhttp://www.w3schools.com/dom/default.asp

似乎此技术已更新,但我无法保证在非MS平台上工作http://msdn.microsoft.com/en-us/library/ms760399.aspx

答案 1 :(得分:-1)

浏览器通常具有启用本地文件访问的设置 - 某些旧浏览器实际上默认启用了它 - 只需浏览特定浏览器上的设置。

这应该足以供个人使用。

可能的解决方法:

  1. 使用XML字符串代替

    var xmlString=
    '
    //some XML content
    ';
    
  2. 然后加载loadXMLString()。如果使用XML的动机只是简单地使用XML表示数据,那么将HTML / JavaScript文档中的XML定义作为字符串应该不会有问题。

    1. 如果您确实需要或想要从本地文件获取XML数据而不考虑浏览器的首选项,那么自签名的Java applet是不错的选择。用户需要允许它们运行,但是使用一些Java applet方法,您可以加载XML文件并返回其内容 - Java applet方法可以从Javascript运行。当然,用户必须安装Java。
    2. 仅适用于Microsoft浏览器(可能还有其他ActiveX支持)的另一个选项是具有类似功能的ActiveX对象。