easyui框架dialog重复加载的问题

  近期在使用easyui搭建框架时发现页面中使用的dialog会随着页面刷新加载多次,导致在取值时发生错误。

  原因应该是easyui把dialog放在了body下,而刷新时只重新加载panel下的所有元素,就会导致多次加载的问题。

  页面使用的是layout布局,切换页面代码如下:

$("body").layout("panel","center").panel({
		title:"所在位置:"+title,
		href:href
	});

 这样每回切换页面时在主页的body下都会留下上个页面的dialog。

 解决方案:

在每个页面的dialog中增加一个样式(名称随便起)pop,如图:


在切换页面代码之前增加删除dialog的代码:

//切换页面时清除dialog缓存,页面中所有dialog都要定义pop样式
	$(".pop").each(function(){
		$(this).dialog("destroy", false);
	});

 就可以清除之前页面的缓存了(参数一定要写false,true的话是跳过了onBeforeDestroy回调函数)。

猜你喜欢

转载自wangzemin.iteye.com/blog/2390937
今日推荐