javascript控制页面(含iframe进行页面跳转)跳转、刷新的方法汇总
一、JS方式的页面跳转
1.window.location.href方式
<script language="JavaScript" type="text/javascript">
window.location.href="top.jsp";
</script>
注意如果top.jsp中有iframe标签,则top.jsp页面将会在iframe中被打开。
2.window.loction.replace方式实现页面跳转,注意跟第一种方式的区别
<script language="javascript">
window.location.replace("http://www.dayanmei.com");
</script>
有3个jsp页面(a.jsp, b.jsp, c.jsp),进系统默认的是a.jsp ,当我进入b.jsp的时候, b.jsp里面用window.location.replace("c.jsp");与用window.location.href ="c.jsp";从用户界面来看是没有什么区别的,但是当c.jsp页面有一个"返回"按钮,调用window.history.go(-1); wondow.history.back();方法的时候,一点这个返回按钮就要返回b.jsp页面的话,区别就出来了,当用 window.location.replace("c.jsp");连到c.jsp页面的话,c.jsp页面中的调用 window.history.go(-1);wondow.history.back();方法是不好用的,会返回到a.jsp 。
3.self.location方式实现页面跳转,和下面的top.location有小小区别
<script language="JavaScript">
self.location='top.htm';
</script>
4.top.location
<script language="javascript">
top.location='xx.jsp';
</script>
5.不推荐这种方式跳转
<script language="javascript">
window.history.back(-1);
</script>
6.页面自动刷新:把如下代码加入<head>区域中 <meta http-equiv="refresh" content="20"> 其中20指每隔20秒刷新一次页面.
7.<a href="javascript:history.go(-1)">返回上一步</a>
8.<a href="<%=Request.ServerVariables("HTTP_REFERER")%>">返回上一步</a>
9.<a href="javascript:" onClick="window.open('http://hi.baidu.com/630270730','','height=500,width=611,scrollbars=yes,status=yes')">打开新窗口</a>
10..window.history.forward()返回下一页
11. window.history.go(返回第几页,也可以使用访问过的URL)
二、iframe中页面跳转
1.iframe页面跳转:
"window.location.href"、"location.href"是本页面跳转
"parent.location.href"是上一层页面跳转
"top.location.href"是最外层的页面跳转
例:如果A,B,C,D都是jsp,D是C的iframe,C是B的iframe,B是A的iframe,如果D中js这样写
"window.location.href"、"location.href":D页面跳转
"parent.location.href":C页面跳转
"top.location.href":A页面跳转
2.iframe中的target
如果D页面中有form的话, form提交后D页面跳转
<form target="_blank">: form提交后弹出新页面
<form target="_parent">: form提交后C页面跳转
<form target="_top"> : form提交后A页面跳转
三.iframe页面刷新
D 页面中这样写:"parent.location.reload();": C页面刷新
(当然,也可以使用子窗口的 opener 对象来获得父窗口的对象:window.opener.document.location.reload(); )
"top.location.reload();": A页面刷新
window.location.href = window.location.href 也可以实现页面刷新,它与reload的区别是:如果在reload之前想服务器提交过数据,那么执行reload会重新执行这个提交操作。 而window.location.href = window.location.href 则不会,因为它是重新进入页面。
//子窗口刷新父窗口
<script language=JavaScript>
self.opener.location.reload();
</script>
(或<a href="javascript:opener.location.reload()">刷新</a> )
//如何刷新另一个框架的页面用
<script language=JavaScript>
parent.另一FrameID.location.reload();
</script>
相关文章
- JavaScript の 内容属性(HTML属性attribute)和 DOM 属性(property)
- JavaScript 工作原理之三-内存管理及如何处理 4 类常见的内存泄漏问题(译)
- javascript按键盘上/右/下/左箭头加速运动
- [Javascript] Create Your First Iterator in JavaScript
- [Javascript] Convert a Callback-Based JavaScript Function to a Promise-Based One
- [Javascript] Understanding the .constructor property on JavaScript Objects
- [Javascript] Iterate Over Items with JavaScript's for-of Loop
- [Javascript] Decorators in JavaScript
- [Javascript] How to use JavaScript's String.replace
- [Javascript] Linting JavaScript with ESLint
- [Javascript] Hoisting in JavaScript
- javascript中的splice方法介绍&示例
- [Javascript] Wait for the Fastest JavaScript Promise to Be Fulfilled with Promise.any()
- [Javascript] Use requestIdleCallback to schedule JavaScript tasks at an optimal time
- [Javascript] Delegate JavaScript (ES6) generator iteration control
- [Javascript] Identify and Deal with NaN in JavaScript
- [Javascript] Redirect the browser using JavaScript
- [Javascript] An Introduction to JSPM (JavaScript Package Manager)
- [Javascript] Hoisting in JavaScript
- javascript面向对象之Javascript 继承
- A Simple Example About Privileged Methods in JavaScript
- web前端框架Javascript开发基础之JavaScript作用域
- JavaScript知识盲区整理