我想使用javacript或jquery更改整个页面的内容,并显示ajax请求返回的404 html页面。那可能吗?怎么样?
答案 0 :(得分:1)
可以使用$.ajax
简写方法中最简单的load()
if( someCondition ){
$('body').load('404.html');
}
这可能是您正在寻找的,也可能不是,因为意图在问题中并不完全清楚
答案 1 :(得分:1)
使用DOMParser将 documentElement 的内容替换为xhr.responseText
中 HTML 来源的 documentElement
var dom = (new DOMParser).parseFromString(xhr.responseText, 'text/html');
// any attribute setting on `document.documentElement` etc here, then
document.documentElement.innerHTML = dom.documentElement.innerHTML;
dom = null;
浏览器支持使用 DOMParser 解析 HTML
Google Chrome 30 +
Firefox 12 +
Internet Explorer 10 +
Opera 17 +
Safari 7.1 +
如果您需要支持旧版浏览器,请考虑而不是解析,从最后搜索</html>
以及<html
的 String 的开头,找到close {{ 1}}然后提取这两者之间的所有内容,然后将其设置为 innerHTML