当前位置: 代码迷 >> Java Web开发 >> jquery 弹出层增加关闭按钮有关问题,点关闭为什么关闭不了
  详细解决方案

jquery 弹出层增加关闭按钮有关问题,点关闭为什么关闭不了

热度:155   发布时间:2016-04-16 21:53:15.0
jquery 弹出层增加关闭按钮问题,点关闭为什么关闭不了
现有两个页面,a.jsp页面是主页面,b.jsp页是要弹出的页面,现在想在b.jsp页面上增加个关闭按钮,点击“关闭”按钮时关闭该弹出的窗口,两页面的部分内容如下: 
A.jsp页面内容如下 

<div class="" style="height:100%;"> 
<iframe id="frm" name="frm" src="b.jsp" width="100%" height="100%" style="overflow-x:hidden;" marginwidth="0" marginheight="0" frameborder="0"  scrolling="no"></iframe> 
</div> 
<div id="testWindow"></div>


B.jsp页面内容如下 
//点击按钮
     
var _testWindow =  window.top.$('testWindow');   
   function newUser(tempStart){   
          if(_testWindow.length <= 0) {   
            _testWindow = window.top.$("<div id='testWindow'/>").appendTo(window.top.document.body);   
          }   
          _testWindow.window({   
              title: "弹出窗口",   
            content:$('#afile').html(),//本页   
             width: 1010,   
             height: 600,   
             closed: false,   
             minimizable:false,   
             maximizable:false,                
             modal:true,//遮照层   
             draggable:false,      
             fit:true,//打开全屏   
             top:'0',   
             left:'0',   
             resizable:false,   
             collapsible:false,   
             shadow: false,   
                          
             onClose : function(){    
                 _testWindow.window("destroy");    
             }    
         });   
 }      
 

 
<div id="afile" class="easyui-window" title="弹出窗口" 
iconCls="icon-save" style="width: 1020px; height: 595px; padding: 5px; background: #fafafa;" closed="true"> 
   <a href="javascript:closeWindow()" onfocus="this.blur()">关闭</a> 
   内容.... 
</div> 

 
点击B.JSP里的“关闭”按钮如何关闭该弹出的窗口,我试也好几种都不行,下面是我试的,都关闭不了 

function closeWindow() { 
  $('testWindow').window('close'); 
  window.top.$('testWindow').window("destroy"); 



如果单独运行子页,在子页上增加关闭按钮 $('_testWindow').window('close'); 能直接关闭,问题是这个子页弹出到主页上面后就无法关闭了,不知道为什么 

------解决思路----------------------
用layer插件  
------解决思路----------------------
用的easyui吧,本身就有关闭方法,显示遮罩层也不用重写一个iframe 直接js创建一个window就可以了.
html:<div id="win" display="none"></div>  
js:
$('#win').show().window({    
    width:600,    
    height:400,    
    modal:true   
});  
  相关解决方案