javascript关于open.window子页面执行完成后刷新父页面的问题分析

本文实例分析了javascript关于open.window子页面执行完成后刷新父页面的方法。分享给大家供大家参考。具体分析如下:

主页面:

<input id="btnAdd" type="button" onclick="openWin();" value="添加" />

在js中有如下代码:

function openWin() {
window.open('addInfo.jsp', '_blank',
'width=300,height=400,top=200,left=400');
}
  //定义callback方法,用于回调
  function callback() {
refreshWin();
}
//刷新当前页面
function refreshWin() {
//调用刷新页面的方法,此处RefreshSocket为刷新页面对应的方法
//也就是说,如果页面有个刷新按钮,
//则点击按钮提交的类名就是此处的类名
var url = 'RefreshSocket';
window.location.href = url;
}

在addInfo.jsp页面有如下代码:

<form name="form" action="AddSocket" method="get">
<input id="onSub" type="button" onclick="formSubmit();" value="确定">
</form>
function formSubmit(){
this.form.submit();
//提交action到AddSocket类
window.opener.callback();
//上述执行完成后,调用打开页面的callback方法,
//此处是调用主页面的callback方法
window.close();//当前页面关闭
}

另外,如果是像删除这样的操作,直接从一个jsp跳转到一个类中,在类中执行一系列操作后,如果想刷新当前页面,那么,可以直接在类中书写跳转语句即可,如下所示:

主页面mainPage.jsp:

//删除操作关联后台的DeleteSocket类,如果要传参数,用?即可
window.location.href = DeleteSocket

DeleteSocket类页面:

代码如下:

//执行一系列操作后,可以直接书写JavaScript代码
//写完这句话后就可以直接跳转到主页面并刷新主页面

out.print("<script type='text/javascript'>location.href='mainPage.jsp'</script>");

希望本文所述对大家的javascript程序设计有所帮助。

(0)

相关推荐

  • 刷新页面的几种方法小结(JS,ASP.NET)

    Javascript刷新页面的几种方法: 1. history.go(0) 2. location.reload() 3. location=location 4. location.assign(location) 5. document.execCommand('Refresh') 6. window.navigate(location) 7. location.replace(location) 8. document.URL=location.href 自动刷新页面的方法: 1.页面自动

  • js离开或刷新页面检测(且兼容FF,IE,Chrome)

    复制代码 代码如下: <!DOCTYPE html><html><head><script>  function closeIt()  {    return "Any string value here forces a dialog box to \n" +          "appear before closing the window.";  }  window.onbeforeunload = close

  • 深入探寻javascript定时器

    javascript单线程 JavaScript的单线程,与它的用途有关.作为浏览器脚本语言,JavaScript的主要用途是与用户互动,以及操作DOM.这决定了它只能是单线程,否则会带来很复杂的同步问题.比如,假定JavaScript同时有两个线程,一个线程在某个DOM节点上添加内容,另一个线程删除了这个节点,这时浏览器应该以哪个线程为准?所以,为了避免复杂性,从一诞生,JavaScript就是单线程,这已经成了这门语言的核心特征,将来也不会改变. 队列任务 单线程就意味着,所有任务需要排队,

  • JavaScript实现页面定时刷新(定时器,meta)

    接下来进入正题-定时不断刷新页面的方法: 1.看到定时,很容易想到js的定时器: //第一种方法 //由于我们已经有了一个定时器,所以只要在定时器test中加入一句刷新页面的代码即可 function test(){ h1.style.color = "red"; h1.innerText = "我变化了"; history.go(0);//可以换成上一篇博客的任何一种方法. } setInterval(test, 1000); 2.通过meta来设置: <!

  • JS刷新当前页面的几种方法总结

    reload 方法,该方法强迫浏览器刷新当前页面.语法:location.reload([bForceGet])                                                                                                                           参数: bForceGet, 可选参数, 默认为 false,从客户端缓存里取当前页.true, 则以 GET 方式,从服务端取最新的页面,

  • js获取当前时间显示在页面上并每秒刷新

    方法很简单,代码也很简洁,直接奉上代码吧 复制代码 代码如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>js获取当前时间显示在页面上</title> <script> window.onload=function(){ //定时器每秒调用一次fnDate() setInterval(f

  • js禁止页面刷新与后退的方法

    本文实例讲述了js禁止页面刷新与后退的方法.分享给大家供大家参考.具体实现方法如下: <script language="javascript"> //禁止用F5键 function document.onkeydown() { if ( event.keyCode==116) { event.keyCode = 0; event.cancelBubble = true; return false; } } //禁止右键弹出菜单 function document.onco

  • 解决微信浏览器Javascript无法使用window.location.reload()刷新页面

    场景是这样子的,页面在初始化时有一个ajax请求,在页面上有一个按钮,点击的时候执行window.location.reload(),正常情况reload()后页面依然会向后台发出请求,但在安卓的微信浏览器中reoad后请求的一直是第一次打开页面时请求的数据.可以理解为请求被缓存了,但没有实测,也不知道是否是缓存. 解决方法是,使用window.location.href="window.location.href+随机数" 代替 window.location.reload().切记

  • node.js中的定时器nextTick()和setImmediate()区别分析

    1.node中使用定时器的问题在于,它并非精确的.譬如setTimeout()设定一个任务在10ms后执行,但是在9ms后,有一个任务占用了5ms,再次轮到定时器时,已经耽误了4ms. 好了node中的定时器就简单的讲这么多. 2.看代码: 复制代码 代码如下: process.nextTick(function(){     console.log("延迟执行"); }); console.log("正常执行1"); console.log("正常执行2

  • javascript中SetInterval与setTimeout的定时器用法

    示例一: 查看演示 下载源码 setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式,而setInterval()则是在每隔指定的毫秒数循环调用函数或表达式,直到clearInterval把它清除.也就是说setTimeout()只执行一次,setInterval()可以执行多次.两个函数的参数也相同,第一个参数是要执行的code或句柄,第二个是延迟的毫秒数. setTimeOut用法 setTimeout函数的用法如下: var timeoutID = window.setTi

随机推荐