history是你浏览过的网页的url(简单的说就是网址)的集合,也就是你的浏览器里的那个历史记录。它在js里是一个内置对象,就跟document一样,它有自己的方法,go就是其中一个。
这个方法的参数是一个数字,它指定要定位的url相对当前页面url位置的下标。当前的url下标为0,所以window.history.go(-1)就是要定位到相对当前页面下标为-1的页面,也就是之前刚刚访问的页面。
举例:当前登陆界面为listuser.asp,则当前页的下标为0,点击编辑后,进入edituer.asp,edituer.asp下标则设为0,listuser.asp设置为-1
跳转页面时,可以使用使用history.go(-1)跳回之前页面
response.write "<script>alert('用户名/密码错误');history.go(-1);</script>"
如此跳转,则可能会保留用户之前表单中的信息,密码框除外
应该使用在登录或者注册等场景,以便输入错误后,不必再次全部重新输入
response.write "<script>alert('用户名/密码错误');history.back(-1);</script>"
会返回上一级页面,并清空所有表单,相当于新的页面
对于不同浏览器,对以上方法解释可能不完全相同。
测试发现最新chrome中history.go(-1)和history.back(-1) 有时都会刷新页面,此情况有待继续研究