`
weichao202
  • 浏览: 95660 次
  • 性别: Icon_minigender_1
  • 来自: 陕西
社区版块
存档分类
最新评论

easyui 如何清空Tab

阅读更多
今天在清空easyui的Tab上耗时不少,不过还是搞定了,可能是我道行浅,老绝得easyui有时很诡异。整理一下代码,希望可以帮到大伙。
具体javaScirpt如下:
我自己的解决办法是把所有的title先存到数组里,然后再遍历,不知网上还没更好的解决方法没,学习一下。
//清空所有的Tab
	 function closeAllTabs(id){
	     var arrTitle = new Array();
	     var id = "#"+id;//Tab所在的层的ID
	     var tabs = $(id).tabs("tabs");//获得所有小Tab
	     var tCount = tabs.length;
	     if(tCount>0){
                     //收集所有Tab的title
		     for(var i=0;i<tCount;i++){
		         arrTitle.push(tabs[i].panel('options').title)
		     }
                     //根据收集的title一个一个删除=====清空Tab
		     for(var i=0;i<arrTitle.length;i++){
		         $(id).tabs("close",arrTitle[i]);
		     }
	     }
	 }   

html如下:
<div id="tabs_bgcom" class="easyui-tabs" data-options="fit:true,plain:true">
</div>

添加Tab
for(var i=0;i<5;i++) {
  $('#tabs_bgcom').tabs('add',{
     cache:false,
     title:"title"+i,
     href:"show!showSubTabCom.do"
  });
}

如何使用
closeAllTabs('tabs_bgcom');

如果使用如下代码不行,tabs.length不稳定会变
//清空所有的Tab
	 function closeAllTabs(id){
	     var id = "#"+id
	     var tabs = $(id).tabs("tabs");
	     if(tabs.length>0){
		for(var i=0;i<tabs.length;i++){
		     $(id).tabs("close",tabs[i].panel('options').title);
		 }
	     }
	 }   

下面这样也不行,var count = tabs.length,
//清空所有的Tab
	 function closeAllTabs(id){
	     var id = "#"+id
	     var tabs = $(id).tabs("tabs");
	     var tCount = tabs.length;
	     if(tCount>0){
		     for(var i=0;i<tCount;i++){
		        $(id).tabs("close",tabs[i].panel('options').title);
		     }
	     }
	 }   
2
0
分享到:
评论
1 楼 hcjzsw 2017-07-07  
学习了,关于tabs长度会变的问题,最后一种方式获取长度存到变量后,遍历删除时是否可以将tabs[i]改为tabs[0]

相关推荐

Global site tag (gtag.js) - Google Analytics