天天看点

easyUI跨tab刷新datagrid

如果需要在当前页(tab)完成操作后刷新另外一个tab中datagrid的数据,然而在当前tab中获取到datagrid调用其load方法,datagrid从服务器获取到数据了,但是那个tab中的datagrid数据清空了!最终没有找到好的解决方法,只好用一种迂回的方式解决:

1、在datagrid对应的那个tab中定义一个刷新datagrid的方法,将其保存到window.top中

window.top["reload_Abnormal_Monitor"]=function(){
         flightTable.datagrid( "load");
   };           

2、在主页中定义一个方法用于选中datagrid对应的标签Tab,然后调用刷新datagrid的那个方法

function reloadTabGrid(title){
     if ($("#tabRegion" ).tabs('exists', title)) {
             $( '#tabRegion').tabs('select' , title);
             window.top.reload_Abnormal_Monitor.call();
     }
}           

3、在当前tab页即完成操作的那个tab中调用主页中的方法

parent.reloadTabGrid( "不正常航班监控" );