单击后退按钮时如何正确显示 ajax 填充页面
Posted
技术标签:
【中文标题】单击后退按钮时如何正确显示 ajax 填充页面【英文标题】:How to properly display an ajax-filled page when Back Button is clicked 【发布时间】:2011-12-24 23:31:09 【问题描述】:我有一个页面调用“mycontent.html”。当用户访问该页面的 url 时,该页面的模板由服务器返回。特别是:
<body>
...
<div id="content1"> </div>
<div id="content2"> </div>
...
</body>
然后有一个 Ajax 回调到服务器以获取 2 个 div 的内容。 (我知道这是低效的,但让我们假设我们现在需要接受它。主要原因是显示函数以前是用 javascript 编写的)。
到目前为止,一切正常。
然后,如果用户单击“mycontent.html”中的链接到另一个页面,然后从该新页面单击浏览器的返回按钮,就会出现问题。
你猜怎么着,它不是显示“整个漂亮的页面”,而是显示服务器返回给上述 Ajax 调用的 json 字符串。
所以我在这方面寻求您的帮助。我的目标是在我仍然必须使用 Ajax 调用来加载内容的上下文中获得更好的用户体验。任何满足这一点的都可以。
提前非常感谢。
【问题讨论】:
【参考方案1】:看来我看到了这篇关于将 python obj 转换为 JS 的帖子:Django Template - Convert a Python list into a JavaScript object
Ajax 的最初目的是因为渲染是用 JS 编写的。现在使用这种方法,我仍然可以使用 JS 进行渲染,但不是通过 AJAX,而是通过将服务器直接发送的数据转换为 JS。
感谢小伙子的阅读。
【讨论】:
以上是关于单击后退按钮时如何正确显示 ajax 填充页面的主要内容,如果未能解决你的问题,请参考以下文章
用iframe后 点后退按钮时总是在潜套框里后退,如何让整个父页面整体后退呢?