我有一个XMLHTTPREQUEST,该请求返回了一个字符串,其中包含我想在该页面上收费的HTML页面(HTML包含JS和CSS(,但我不知道该怎么做。这是我的代码:
xhr.onreadystatechange= function(){
if (xhr.readyState ===4){
if (xhr.status ===200){
try{
var data = JSON.parse(xhr.responseText);
if(data.success){
//.......here i obtain the HTML with xhr.repsonse;
}else{
toastAlert(1,data.msg_response);
}
}
catch{
console.log("......")
}
}else{
toastAlert(1,"......");
}
}
};
您可以使用DOM 元素innerHTML
属性来设置解析响应字符串并将其添加到 DOM。
MDN 链接: https://developer.mozilla.org/en-US/docs/Web/API/Element/innerHTML
例:
document.getElementById('container').innerHTML = '<div>XHR Response...</div>';
此方法不会执行整个页面刷新,但它允许您使用 AJAX 执行一些基本的页面内容重新加载。我鼓励你看看Turbolinks项目:https://github.com/turbolinks/turbolinks
干杯。