【问题标题】:Some browsers don't retain appended AJAX content when page returned to某些浏览器在页面返回时不保留附加的 AJAX 内容
【发布时间】:2011-10-10 09:02:24
【问题描述】:

我开发了一个 AJAX 搜索组件来查询 Google Search Appliance。它对 php 脚本进行 AJAX 调用,该脚本从 GSA 中获取 XML 并将其编码为 JSON 并将其发送回浏览器。从那里,jquery 模板插件完成其余的工作。该过程正常运行。

但是,当我离开搜索页面(例如,单击结果链接)并稍后希望返回搜索结果时,IE 和 chrome 不会保留搜索结果和您在页面上的位置,而 FF , Opera 和 Safari 确实保留了附加到 DOM 的 AJAX 内容和你在 pae 上的位置。在 IE 和 Chrome 中,它本质上是在回击并看到一个没有结果的空白页面。

浏览器的行为不同是否有原因? (有些浏览器在返回页面时会显示附加内容,有些则不会)

有没有一种无需某种类型的会话、状态或存储即可轻松解决此问题的方法?

谢谢

【问题讨论】:

    标签: jquery ajax json search cross-browser


    【解决方案1】:

    基本上我会怎么做,当您点击搜索时,您更改页面的位置而不实际重定向(例如:http://myurl.com/search.html#mysearchtext(url 编码))

    然后你进行搜索。

    在页面的 onload 事件中,您检查 url 中是否有任何 #xxxxx,如果存在则进行搜索。

    它有两个目的: - 这样您的背部动作将始终有效:P - 这样您就可以直接链接您的搜索结果。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多