繁体   English   中英

JS加载应该加载HTML资产(CSS和JS)的外部HTML

[英]JS loading external HTML that should load the HTML's assets (CSS and JS)

我已经编写了以下代码段,以发送HTTP请求以获取HTML文件。 HTML文件包含CSS和JS(链接和脚本标签):

var request = new XMLHttpRequest();
request.open('GET', 'form.html', true);

request.onload = function() {
  if (request.status >= 200 && request.status < 400) {
    var resp = request.responseText;

    this.innerHTML = resp;
  } else {

  }
};

request.onerror = function() {

};

request.send();

上面的代码段发送了一个请求并获取HTML。 但是,将HTML放入DOM时遇到了问题,也没有发送获取样式和javascript的请求。 如何执行以上操作,并获取响应HTML,将其放入页面中,并发送请求以获取各种资产?

在您的onload处理程序中, this指向request对象,而不是文档,因此设置innerHTML属性不会做任何有用的事情。 您需要告诉它新HTML的放置位置,例如

request.onload = function() {
  if (request.status >= 200 && request.status < 400) {
    var resp = request.responseText;

    document.documentElement.innerHTML=resp;
  } else {

  }
}

(请注意,这在早期的IE版本中将无法使用)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM