我想知道如何使用XMLHttpRequest加载远程URL的内容,并将访问站点的HTML存储在JS变量中.

比如说,如果我想加载并提醒()http://foo.com/bar.php的HTML,我该怎么做?

推荐答案

XMLHttpRequest.readyState等于XMLHttpRequest.DONE时,你可以在XMLHttpRequest.onreadystatechange中得到XMLHttpRequest.responseText.

下面是一个例子(与IE6/7不兼容).

var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() {
    if (xhr.readyState == XMLHttpRequest.DONE) {
        alert(xhr.responseText);
    }
}
xhr.open('GET', 'http://example.com', true);
xhr.send(null);

为了更好地兼容交叉浏览器,不仅是IE6/7,还可以覆盖一些特定于浏览器的内存泄漏或bug,以及通过触发ajaxical请求来减少冗长,您可以使用jQuery.

$.get('http://example.com', function(responseText) {
    alert(responseText);
});

请注意,当不在localhost上运行时,必须考虑Same origin policy for JavaScript.您可能需要考虑在您的域中创建代理脚本.

Javascript相关问答推荐

React redux状态未在React-Router库中呈现

如何在alpinejs中显示dev中x-for的元素

从外部访问组件变量-Vueejs

在JavaScript中,如何将请求的回调函数的结果合并到运行的代码中?

Chrome是否忽略WebAuthentication userVerification设置?""

WebRTC关闭navigator. getUserMedia正确

为什么我的导航条打开状态没有在窗口addeventlistener(Reaction Js)中更新?

如何从HTML对话框中检索单选项组的值?

当使用';字母而不是与';var#39;一起使用时,访问窗口为什么返回未定义的?

try 使用javascript隐藏下拉 Select

在使用位板时,如何在Java脚本中判断Connect 4板中中柱的对称性?

VSCode中出现随机行

Reaction组件在本应被设置隐藏时仍显示

一个实体一刀VS每个实体多刀S

MongoDB受困于太多的数据

如何组合Multer上传?

Django导入问题,无法导入我的应用程序,但我已在设置中安装了它

JavaScript将字符串数字转换为整数

未找到用于 Select 器的元素:in( puppeteer 师错误)

ComponentWillReceiveProps仍在React 18.2.0中工作