老项目中发现的一个小bug,表单提交后跳转的jsp是通过history.back()方法返回上一页,因为项目极老,当时只兼容ie,所以在测试的时候都没有发现这个问题。今天用chrome测试发现,在返回的时候填写的表单还保存着,只需要重新填写验证码即可。于是想要解决这个bug。
度娘一波发现对于history.go()和history.back()怎么说的都有,但经实测,不论是history.go(-1)或是history.back(-1)以及history.go()都只能返回上一页,但无法刷新。
多方探查之后,发现一个返回上一页面并刷新上一页面的方法:document.referrer
referrer 属性可返回载入当前文档的文档的 URL。如果当前文档不是通过超级链接访问的,则为 null。这个属性允许客户端
JavaScript 访问 HTTP 引用头部
示例:
<botton οnclick="tt()">去刷新父级页面</button>
function tt() {
// window.history.back();//去另一个页面不刷新
self.location=document.referrer;//去另一个页面刷新
}