如何使用javascript或vbscript从客户端的服务器加载xml数据?

时间:2011-07-30 07:11:15

标签: javascript xml vbscript

已经快三周了,我正在谷歌上搜索。我的眼睛累了,头疼也包括在内。 我不能做甚至每天8-10小时计算:( 我有一些数据保存在服务器(域或子域)上的有效XML文件中

我选择了XML,因为我可能或可能需要它用于将来的其他应用程序。

我想做的是:
1-包括XML文件并将其加载到客户端HTML页面。(子域或普通域在包含时是否有所不同?)
2-我更喜欢使用JavaScript(或Vb Script)或任何其他客户端脚本(如果可用)来解析或操作事物。

如果你更喜欢我更好的方法来包含服务器端XML文件,包括......我在听

修改
我现在正在研究AJAX,但为什么我无法从URL获取数据? 类似的东西:
    xmlhttp.open( “GET”, “https://www.mywebsite.com/xmlfile.xml”,真正的);
买它不起作用:(

3 个答案:

答案 0 :(得分:0)

  

包括xml文件并将其加载到客户端html页面。

使用Ajax和use a library访问它。

  

子域或普通域在包含?

时会有所不同

如果与页面不同:yes

答案 1 :(得分:0)

答案 2 :(得分:0)

因为你还没有给出你正在使用的实际代码,我猜这里并且已经把你可以尝试的HTA放在一起了。这仅适用于Windows(因为我认为这是您要定位的平台)。将此代码复制到文本文件中,并使用.hta文件扩展名保存:

<html>
    <head>
        <title>HTA Ajax Example</title>
        <script type="text/javascript">
            var ajaxRequest = function() {
                var http = new ActiveXObject('MSXML2.XMLHTTP');
                http.onreadystatechange = function() {
                    if(http.readyState === 4 && http.status === 200) {
                        var div = document.getElementById('target-div');
                        div.innerHTML = http.responseText;
                    }
                }
                http.open('GET', 'http://www.w3schools.com/ajax/ajax_info.txt', true);
                http.send();
                return true;
            }
        </script>
    </head>
    <body>
        <div id="target-div"></div>
        <input type="button" value="load" onclick="ajaxRequest();"></input>
    </body>
</html>

单击“加载”按钮,w3schools示例中的文本将加载到页面中。这应该让你开始。如果您想提供跨平台解决方案,像jQuery这样的库将为您处理所有差异。

如前所述,请求中使用的url是不同服务器上资源的完整URL。如果由于跨域安全问题将此代码放在服务器上,则无法使用此功能。

如果您想从XML文件中提取信息,可能需要使用http.responseXML而不是http.responseText。前一个属性使响应可用作XML文档对象而不是文本字符串。