1 var treeTitle = '选择列表';
2 var treeUrl = '../DataAshx/getTreeNode.ashx?pid=-1';
3 var nodeExp=false;
4 var nodekeep="";
5 var rows;
6 var noinf=0;
7 $(function() {
8 $('#treewindow').window({
9 title: treeTitle,
10 width: 400,
11 height: 400,
12 modal: true,
13 shadow: false,
14 closed: true,
15 resizable: false,
16 maximizable: false,
17 minimizable: false,
18 collapsible: false
19 });
20 });
21 function treeWindowOpen(name,rowIndx) {
22 $('#treewindow').window('open');
23 nodekeep="";
24 nodeExp=false;
25 rows=rowIndx.toString();
26 $('#basetree').tree({
27 checkbox: true,
28 animate: true,
29 url: treeUrl+"&coln="+escape(name.toString()),
30 cascadeCheck: true,
31 onlyLeafCheck: false,
32 onBeforeExpand: function(node, param) {
33 //------------第一种方法:异步加载子节点值-------------
34 // $('#basetree').tree('options').url = "../DataAshx/getTreeNode.ashx?pid=" + node.id+"&coln="+escape(name.toString());
35
36 //------------第二种方法:Ajax方法返回子节点Json值,使用append方法加载子节点
37 $.ajax({
38 type: "POST",
39 url: "../DataAshx/getTreeNode.ashx?pid=" + node.id+"&coln="+escape(name.toString())+"&casn="+escape(node.attributes.cas.toString()),
40 cache: false,
41 async: false,
42 dataType: "json",
43 success: function(data) {
44 if(nodekeep.indexOf(node.id)==-1)
45 {
46 append(data, node);
47 nodeExp = true;
48 }
49 }
50 });
51 $("#radCollapse").removeAttr("checked");
52 },
53 onLoadError:function(Error)
54 {
55 $.messager.alert('提示', '查询语句出错', 'error');
56 if(nodeExp==false)
57 {
58 $("#basetree").children().remove();
59 }
60 },
61 onLoadSuccess:function(success)
62 {
63 var child=$("#basetree").children().length;
64 noinf++;
65 if(child==0&&noinf>1)
66 {
67 $.messager.alert('提示', '数据不存在', 'Info');
68 }
69 }
70 });
71
72 }
73 function treeWindowClose() {
74 $('#treewindow').window('close');
75 nodekeep="";
76 nodekeep=false;
77 }
78 function treeWindowSubmit() {
79 var nodes = $('#basetree').tree('getChecked');
80 var info = '';
81 if (nodes.length > 0) {
82 for (var i = 0; i < nodes.length; i++) {
83 if (info != '') { info += ','; }
84 info += nodes[i].text;
85 }
86 //alert(JSON.stringify(nodes));
87 }
88 else {
89 var node = $('#basetree').tree('getSelected');
90 if (node != null) {
91 info = node.text;
92 }
93 }
94 $("#"+rows).val(info);
95 $('#treewindow').window('close');
96 nodekeep="";
97 nodeExp=false;
98 }
99 //全部展开
100 function collapseAll() {
101 $("#radCollapse").attr("checked", "checked");
102 var node = $('#basetree').tree('getSelected');
103 if (node) {
104 $('#basetree').tree('collapseAll', node.target);
105 } else {
106 $('#basetree').tree('collapseAll');
107 }
108 }
109 //全部收缩
110 function expandAll() {
111 var node = $('#basetree').tree('getSelected');
112 if (node) {
113 $('#basetree').tree('expandAll', node.target);
114 } else {
115 $('#basetree').tree('expandAll');
116 }
117 }
118 //增加子节点
119 function append(datas,cnode) {
120 var node = cnode;
121 $('#basetree').tree('append', {
122 parent: node.target,
123 data: datas
124 });
125 nodekeep+=","+node.id;
126 }
127 //重新加载
128 function reload() {
129 var node = $('#basetree').tree('getSelected');
130 if (node) {
131 $('#basetree').tree('reload', node.target);
132 } else {
133 $('#basetree').tree('reload');
134 }
135 }
136 //删除子节点
137 function remove() {
138 var node = $('#basetree').tree('getSelected');
139 $('#basetree').tree('remove',node.target);
140 }