ext tab页下的item局部刷新功能

EXT3.4

现在有一个功能,需要有两个tab页,一个列表tab,一个TreeGrid展示tab

1.列表tab里点击修改,修改之后,TreeGrid这个tab需要展示最新的内容

2.TreeGrid的tab页里有一个重置按钮,点击重置,局部刷新该tab

 

在TreeGrid这个tab下定义id

由于该TreeGrid 的cm是经过数据库查找动态显示的,如果在列表配置修改的时候,改动了,该cm的展示也是跟着改变的,而且由于TreeGrid  的重新加载事件暂未知,所以就讲 生成的这个TreeGrid 放到function里,然后return出 这个TreeGrid 来使用。

首先页面初次加载,对该TreeGrid的tab进行 removeAll(); 然后在进行add和doLayout操作:

          
	  Ext.getCmp("ID").removeAll();
	  var treeGrid  = getTreeGird();
	  Ext.getCmp("ID").add(treeGrid);
	  Ext.getCmp("ID").doLayout();

接着是修改,本来是准备定义在修改完成之后,对该TreeGrid的tab进行 removeAll(); 然后在进行add和doLayout操作,

但是实际测试发现,移除了之后,虽然在js控制台调试中是add进去了,但是页面始终没有将该TreeGird显示出来。

 

最后这里是使用了tab的监听事件:

listeners:{
              'tabchange':function (t, n) {
            	  reloadTreeGrid();
              }
 }

监听到切换了tab,然后进行对TreeGrid的tab的重新加载。

 

最后的重置刷新,就直接是写在了调用的success里面进行对该tab的移除和添加。

 

(window.location.reload();虽然也是能进行页面的刷新,但是这种页面全部刷新体验感觉不好)

你可能感兴趣的:(Ext)