使用 AJAX 响应和 javascript 更新页面内容

Update page content using AJAX response with javascript

本文关键字:更新 javascript AJAX 响应 使用      更新时间:2023-09-26
有很多

关于这个问题的问题,尽管没有一个真正有帮助。通过 W3C DOM 替换整个 HTML 文档还有哪些其他选项?更接近我想要的,但没有回答我的问题。

我有一个页面。当用户单击从该页面到另一个页面的链接时,将使用 AJAX 获取新页面的内容。responseText包含一个全新的页面。如何用新内容替换旧内容?

Facebook完美无缺地做到这一点,Gmail也是如此。页面已更新,包括其头部(当页面标题根据新内容更改时,我注意到了这一点)。

到目前为止,我已经尝试替换<html>标签的innerHTML,但是变量从一个页面携带到另一个页面,这会导致错误。我也尝试了document.write(xhr.responseText)但是当调用history.onpopstate时会引起冲突,但大多数情况下,它非常慢。

我还没有尝试的是document.replaceChild(newDom, document.documentElement),因为我找不到合适的跨浏览器方法来创建新的文档对象实例。

那么,有没有一种干净的方法来欺骗浏览器"这是一个新页面。您不应将变量从上一页携带到此页。将其呈现为与我此处的HTML文本完全不同的页面。

你可以用angular js完美地做到这一点。

您是否尝试过添加类似... document.getElementById(elementID).innerHTML = ""; ..到事件处理程序,然后追加新信息?