Jquery EasyUI Dialog close和destroy方法

        在使用JQuery EasyUI做项目的时候,经常需要使用Dialog实现弹出框效果,但是在“查看日常活动链接”的时候,有两个模块调用的是同一个Dialog页面,这个时候就出现页面混乱情况,要么就是Dialog内容无法打开,其实这是Dialog的close和destroy用法的问题。

      解决办法:  

      使用close的方法来关闭dialog时,此dialog并不是完全消失,只是隐藏起来了而已。当另外一个dialog和这个dialog相同时,就会发生混乱。所以我们不适用close的方法来关闭dialog,使用destroy来销毁dialog,当使用destroy时,如果页面上显式定义了dialog的话,关闭后就永远都打不开了。所以我们不显式定义dialog,并且把链接页面和列表页面分开。

      示例如下:

//查看活动细节
	 function viewActisDetailRow(index,obj){
	 
	  selectMagDeclActiCurRow(obj);
	  
	  var node = $('#magDeclActis').datagrid('getSelected'); 
	  
	  var teanName=node.decTeamName;
	  var userid=node.addUserId; //用户编号
	  var year=node.year;        //申报年份
	  
	  $('<div></div>').dialog({    
					    title: teanName,    
					    width: 850,    
					    height: 550,    
					    closed: false,    
					    cache: false,    
					    href:'actiRecords/goShowTeamActiDetailsPage!goActiDetailPage?user.userid='+userid+'&year='+year, 
					    modal: true,
					    onClose:function(){
					    	$(this).dialog('destroy');
					    }
	  }); 
	}
     $('<div></div>').dialog动态创建Dialog,否则Dialog被destroy后,无法再打开。


你可能感兴趣的:(Jquery EasyUI Dialog close和destroy方法)