论坛首页 Java企业应用论坛

提交模式窗口后,刷新父窗口数据

浏览 14119 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (2) :: 隐藏帖 (11)
作者 正文
   发表时间:2010-07-29   最后修改:2010-07-30

有些时间,按需求设计,一个窗口中,点击按扭,弹出模式窗口,在模式窗口中,添加完数据后(提交),关闭模式窗口,并且刷新父窗口,而恰恰模式窗口并不支持window.opener,所以无法获得父窗口,也就是说无法在关闭模式窗口后,来得到父窗口,但是可以借助showModealDialog的返回值来判断是否刷新,当调用showModealDialog时,父窗口代码会停在这一行,当弹出的模式窗口关闭时给window.returnValue赋值,再调用window.close()方法,最后submit提交,等数据提交后,会关闭了模式窗口,此时程序返回到父窗口,showModealDialog得到返回值,接下来,根据返回值即可决定是否要reload,注意:为避免打开新窗口,一定要在父窗口的<head>下加入<base target="_self" />,这样子就实现了关闭模式窗口来刷新父窗口了。

代码1:parent form

function showDatas(){

   var re=window.showModalDialog("url","parameter","description");

    if(re==1){

        window.location.reload();

    }

}

代码2:modal form

function subForm(){

    window.returnValue="1";

    window.close();

    document.getElementById("myForm").submit();

}

tanlinqing

   发表时间:2010-07-31  
呵呵。。。看标题的时候,我还以为是JAVA的帖子哦。没想到是JAVASCRIPT的。
0 请登录后投票
   发表时间:2010-07-31  
最好不要用reload,用window.location.href=window.location.href,更好。
0 请登录后投票
   发表时间:2010-08-02  
legend_jhz 写道
最好不要用reload,用window.location.href=window.location.href,更好。

0 请登录后投票
   发表时间:2010-08-10  
reload可能会弹出提示窗口,而是href是重定向提交数据
0 请登录后投票
   发表时间:2010-08-10  
楼主长得像潘玮柏
1 请登录后投票
   发表时间:2010-08-10  
很开心谢谢了,要是说潘玮柏像我,就完美了,呵呵
1 请登录后投票
   发表时间:2011-05-03  
刚好 碰到这个问题 按照楼主说的 解决了  感谢非常!!!
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics