一个表格,点击查询按钮后发送ajax获取到若干数据,点击某一项数据,页面跳转了。点击后退按钮,页面回到表格初始化状态。能否实现点击后退后保留ajax获取数据后的状态?????我看了有pjax,但是项目要兼容ie8...
一个表格,点击查询按钮后发送ajax获取到若干数据,点击某一项数据,页面跳转了。点击后退按钮,页面回到表格初始化状态。能否实现点击后退后保留ajax获取数据后的状态?????我看了有pjax,但是项目要兼容ie8...
你需要 IE 10+,五年前你是支持不了 IE 的。
所以,放弃吧。你必须承认,某些客户端,尤其是多年之前的,其功能就是差一些。
可以尝试用古代的技术做一些替代方案,比如表格放一个 iframe 里,内容加载到另一个 iframe,然后把表格那个 iframe 隐藏。或者你把表格给隐藏起来。关键是别让用户点后退。
更新:哦哦,我都忘记了用 hashchange 取代 popstate 这种用法了。这是 pushState 支持不好的年代 Twitter 他们用过的方案,刚好支持 IE 8。GitHub 没用这个,对旧浏览器直接整页刷新了。
ie8 好像支持localstorage吧?
如果支持的话,ajax之前先判断localstorage有没存数据,如果有就直接取出渲染页面。
第一次ajax请求时是把数据存到localstorage中。
后退应该也是可以触发js渲染页面的
(以上没有具体实践过,不是专业写前端的.....)
1.点击某一条既然你想保留原页面的表格数据,为何不做新开页面呢?
2.如果你不想新开页面,那么你肯定就是在点数据的那个页面中做了操作,那么我觉得远ajax请求就不应保留,因为不是最新数据,返回回去的时候,理应刷新
3.如果点击数据进入页面只是按钮的'审核''删除'类似操作,哪怕有简单的form表单提交,都可以使用当前页面弹层来解决,所以针对不同情况,你自行决定吧.
非ie:
DocumentFragment
document.createDocumentFragment
ie8就直接单页缓存, window.clipBoard都是VBScript和JScript衍生过来的bom对象,ActiveX
无聊啊
history对象早就有方法解决这个问题:history pushState/replaceState 这个你可以搜搜,
参考网址 http://www.zhangxinxu.com/wor...
10 回答11.2k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
还有个最直接的方法,点击某一项数据的时候跳转的是新页面= =