解决window.history.go(-n)返回无法刷新

隔壁小蒋 93 0

前天做了一个基于Java web的mysql数据库的商品分页展示、修改、删除功能的网页。遇到个问题,在修改页面修改成功后,通过history.go(-2)返回到展示页面,但修改的内容并没有得到更新,需要手动刷新一次。通过度娘了解到history.go(-1)本来就是支持返回+刷新的,好像是浏览器的原因未能自动刷新。

对此,网友也提供了许多方法,试了一些没什么用。最终用了一个给window命名的方法,首先判断当前窗口的name是否等于自己设置name,如果不等于,刷新页面且将自己设置的name赋值给name;如果等于,将window.name设置成任意其他值。详细代码如下,此代码是放在展示页的。

<script>
if(window.name != "2"){
    location.reload();
    window.name = "2";
}else{
    window.name = "1";
}
</script>

这样一来返回+刷新算是搞好了,然而又出现另一个问题,分页操作也在这个展示页面,每次点击上一页下一页,都会刷新2次,导致页面闪烁。于是我又在翻页按钮里加了一个onclick="seName()",具体代码如下:

<script>
function setName(){
	window.name = "2";
}
</script>

好了,这下问题完美解决了[aru_50]

完整代码

发表评论 取消回复
表情 图片 链接 代码

分享
微信
微博
QQ