1. 程式人生 > >jquery easyui tree reload以後選中之前選擇的節點

jquery easyui tree reload以後選中之前選擇的節點

轉載至:https://blog.csdn.net/wang_song_yan/article/details/49928753

問題背景:

介面使用左側tree,右側datagrid的佈局。

點選左側的樹節點,右側顯示當前節點下的資料,右側操作完以後左側樹的資料會發生改變,所以左側的樹需要重新整理(reload)。

重新整理完以後,樹的選中狀態沒了。

解決辦法:

思路:點選左側樹的節點時記錄點選的nodeId,載入完以後重新選擇該節點。

程式碼實現:

[javascript] view plain copy
  1. var nodeId;  
  2. $(function(){   
  3.     $('#tree').tree({  
  4.       url:url,  
  5.       checkbox:false,  
  6.       onClick:function(node){  
  7.         nodeId=node.id;  
  8.       },  
  9.       onLoadSuccess(data){  
  10.         if(nodeId!=null){  
  11.             var node = $('#tree').tree('find', nodeId);  
  12.             $('#tree').tree('expandTo', node.target).tree('select', node.target);  
  13.         }  
  14.       }  
  15.     });  
  16. }) ;  

重新整理tree的資料:

[javascript] view plain copy
  1. $('#tree').tree('reload');  

重新選擇的程式碼必須放在onLoadSuccess方法裡,否則不起作用