模态窗口与非模态窗口

 

1. 非模态窗口刷新

 在父页面打开子页面代码为:

window.open(url,' ','height= 500px, width= 760px');

 

子页面刷新父页面代码为:

window.opener.document.location.reload();

 

2.模态窗口刷新

 父页面打开子页面:

window.showModalDialog(url,'window','dialogHeight:550px; dialogWidth:800px;  ');

             

子页面刷新父页面:

window.dialogArguments.location.reload();

 

注:一般打开子页面后,想在子页面进行一些操作,提交action,但点击按钮查询时,老是弹出新窗口,而不是在原窗口查询。解决方法:<head></head>之间加入<base  target="_self"> ,引入这一语句,位置放置的不好又有可能一起另一错误:Internet 无法打开。这一问题的解决可以查看:http://wibiline.iteye.com/blog/387201

 

 

 

3. 模态窗口到非模态窗口,session丢失

 

打开模态窗口A后,要在A上打开非模态窗口B时,就会出现session丢失的情况。

打开A的代码:

window.showModalDialog(url,self,'dialogHeight:500px; dialogWidth:760px;  ');

打开B的代码:

window.open(url,'','height= 500px, width= 760px,);

 

解决问题的办法:

 

打开A的代码为:

window.showModalDialog(url,window,'dialogHeight:500px; dialogWidth:760px;  ');

而要在A页面打开B,代码如下:

Js代码    收藏代码
  1. var openobj = window;   
  2. if(typeof(window.dialogArguments) == "object")   
  3. {   
  4.       openobj = window.dialogArguments;   
  5. }  
  6.  openobj.open(url,'','height= 500px, width= 760px;');   

 

你可能感兴趣的:(模态窗口)