tree.ftl 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <#-- 准备树的类型 -->
  2. <#assign v_type= (parameters.type?string)!"2" >
  3. <#-- 准备机构树的 通办业务ID -->
  4. <#assign v_bussFuncId = parameters.bussFuncId!"" >
  5. <div style="text-align:center;">
  6. <a href="#" id="${parameters.id!""}_zk">全部展开</a> | <a href="#" id="${parameters.id!""}_gb">全部关闭</a>
  7. </div>
  8. <hr/>
  9. <div id="${parameters.id!""}">
  10. <script type="text/javascript">
  11. jQuery(function($){
  12. var vid='#${parameters.id!""}';
  13. //避免重复初始化
  14. if($(vid).data('_init')){return};
  15. $(vid).data('_init',true);
  16. var initDepth = ${parameters.initDepth!2};
  17. var expandDepth = 2;
  18. if(initDepth>0){
  19. expandDepth = Math.min(initDepth,2);
  20. }
  21. var selected = ${tojson(parameters.selected![])};
  22. var defOptions=${parameters.options!"{}"};
  23. if (defOptions.initAjax && defOptions.initAjax.data) {
  24. jQuery.extend(defOptions.initAjax.data,{ds:'${parameters.ds!""}'});
  25. }
  26. var defAjax={key:'${parameters.root!""}',depth:1,whereCls:${tojson(parameters.whereCls!"")}
  27. ,view:'${(v_type=="2")?string("v_org_tree","v_right_tree")}'
  28. ,orderSql:'${(v_type=="2")?string("TREEKEY asc","TREEKEY asc,sortno asc")}'
  29. ,bussFuncId:'${(v_type=="2")?string(v_bussFuncId,"")}'
  30. ,ds:'${parameters.ds!""}',type:'${parameters.type!""}'
  31. };
  32. var url="${request.contextPath}/tree.do?"+$.param({selected:selected},true);
  33. $(vid).dynatree(jQuery.extend({
  34. minExpandLevel:2,checkbox: false,selectMode: 1
  35. ,initAjax:{url: url,data:jQuery.extend({},defAjax,{depth:initDepth,showRoot:true})}
  36. ,onLazyRead: function(dtnode){
  37. dtnode.appendAjax({url: url
  38. ,data: jQuery.extend({},defAjax,{"key": dtnode.data.key})
  39. });
  40. }
  41. },defOptions));
  42. $(vid+'_zk').click(function(){//全部展开
  43. var root = $(vid).dynatree("getRoot");
  44. root.appendAjax({url: url
  45. ,data: jQuery.extend({},defAjax,{depth:-1,showRoot:true})
  46. ,success: function(dtnode) {
  47. //展开所有节点
  48. root.visit(function(dtnode){dtnode.expand(true);});
  49. }
  50. });
  51. $(vid+'_gb').click(function(){//全部关闭
  52. $(vid).dynatree("getRoot").visit(function(dtnode){dtnode.expand(false);});});
  53. });
  54. });
  55. </script>
  56. </div>