jquery.treegrid.js 28 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157
  1. /**
  2. * jQuery EasyUI 1.4.1
  3. *
  4. * Copyright (c) 2009-2014 www.jeasyui.com. All rights reserved.
  5. *
  6. * Licensed under the GPL license: http://www.gnu.org/licenses/gpl.txt
  7. * To use it on other terms please contact us at info@jeasyui.com
  8. *
  9. */
  10. (function($){
  11. function _1(_2){
  12. var _3=$.data(_2,"treegrid");
  13. var _4=_3.options;
  14. $(_2).datagrid($.extend({},_4,{url:null,data:null,loader:function(){
  15. return false;
  16. },onBeforeLoad:function(){
  17. return false;
  18. },onLoadSuccess:function(){
  19. },onResizeColumn:function(_5,_6){
  20. _26(_2);
  21. _4.onResizeColumn.call(_2,_5,_6);
  22. },onBeforeSortColumn:function(_7,_8){
  23. if(_4.onBeforeSortColumn.call(_2,_7,_8)==false){
  24. return false;
  25. }
  26. },onSortColumn:function(_9,_a){
  27. _4.sortName=_9;
  28. _4.sortOrder=_a;
  29. if(_4.remoteSort){
  30. _25(_2);
  31. }else{
  32. var _b=$(_2).treegrid("getData");
  33. _3f(_2,0,_b);
  34. }
  35. _4.onSortColumn.call(_2,_9,_a);
  36. },onBeforeEdit:function(_c,_d){
  37. if(_4.onBeforeEdit.call(_2,_d)==false){
  38. return false;
  39. }
  40. },onAfterEdit:function(_e,_f,_10){
  41. _4.onAfterEdit.call(_2,_f,_10);
  42. },onCancelEdit:function(_11,row){
  43. _4.onCancelEdit.call(_2,row);
  44. },onBeforeSelect:function(_12){
  45. if(_4.onBeforeSelect.call(_2,_47(_2,_12))==false){
  46. return false;
  47. }
  48. },onSelect:function(_13){
  49. _4.onSelect.call(_2,_47(_2,_13));
  50. },onBeforeUnselect:function(_14){
  51. if(_4.onBeforeUnselect.call(_2,_47(_2,_14))==false){
  52. return false;
  53. }
  54. },onUnselect:function(_15){
  55. _4.onUnselect.call(_2,_47(_2,_15));
  56. },onBeforeCheck:function(_16){
  57. if(_4.onBeforeCheck.call(_2,_47(_2,_16))==false){
  58. return false;
  59. }
  60. },onCheck:function(_17){
  61. _4.onCheck.call(_2,_47(_2,_17));
  62. },onBeforeUncheck:function(_18){
  63. if(_4.onBeforeUncheck.call(_2,_47(_2,_18))==false){
  64. return false;
  65. }
  66. },onUncheck:function(_19){
  67. _4.onUncheck.call(_2,_47(_2,_19));
  68. },onClickRow:function(_1a){
  69. _4.onClickRow.call(_2,_47(_2,_1a));
  70. },onDblClickRow:function(_1b){
  71. _4.onDblClickRow.call(_2,_47(_2,_1b));
  72. },onClickCell:function(_1c,_1d){
  73. _4.onClickCell.call(_2,_1d,_47(_2,_1c));
  74. },onDblClickCell:function(_1e,_1f){
  75. _4.onDblClickCell.call(_2,_1f,_47(_2,_1e));
  76. },onRowContextMenu:function(e,_20){
  77. _4.onContextMenu.call(_2,e,_47(_2,_20));
  78. }}));
  79. if(!_4.columns){
  80. var _21=$.data(_2,"datagrid").options;
  81. _4.columns=_21.columns;
  82. _4.frozenColumns=_21.frozenColumns;
  83. }
  84. _3.dc=$.data(_2,"datagrid").dc;
  85. if(_4.pagination){
  86. var _22=$(_2).datagrid("getPager");
  87. _22.pagination({pageNumber:_4.pageNumber,pageSize:_4.pageSize,pageList:_4.pageList,onSelectPage:function(_23,_24){
  88. _4.pageNumber=_23;
  89. _4.pageSize=_24;
  90. _25(_2);
  91. }});
  92. _4.pageSize=_22.pagination("options").pageSize;
  93. }
  94. };
  95. function _26(_27,_28){
  96. var _29=$.data(_27,"datagrid").options;
  97. var dc=$.data(_27,"datagrid").dc;
  98. if(!dc.body1.is(":empty")&&(!_29.nowrap||_29.autoRowHeight)){
  99. if(_28!=undefined){
  100. var _2a=_2b(_27,_28);
  101. for(var i=0;i<_2a.length;i++){
  102. _2c(_2a[i][_29.idField]);
  103. }
  104. }
  105. }
  106. $(_27).datagrid("fixRowHeight",_28);
  107. function _2c(_2d){
  108. var tr1=_29.finder.getTr(_27,_2d,"body",1);
  109. var tr2=_29.finder.getTr(_27,_2d,"body",2);
  110. tr1.css("height","");
  111. tr2.css("height","");
  112. var _2e=Math.max(tr1.height(),tr2.height());
  113. tr1.css("height",_2e);
  114. tr2.css("height",_2e);
  115. };
  116. };
  117. function _2f(_30){
  118. var dc=$.data(_30,"datagrid").dc;
  119. var _31=$.data(_30,"treegrid").options;
  120. if(!_31.rownumbers){
  121. return;
  122. }
  123. dc.body1.find("div.datagrid-cell-rownumber").each(function(i){
  124. $(this).html(i+1);
  125. });
  126. };
  127. function _32(_33){
  128. return function(e){
  129. $.fn.datagrid.defaults.rowEvents[_33?"mouseover":"mouseout"](e);
  130. var tt=$(e.target);
  131. var fn=_33?"addClass":"removeClass";
  132. if(tt.hasClass("tree-hit")){
  133. tt.hasClass("tree-expanded")?tt[fn]("tree-expanded-hover"):tt[fn]("tree-collapsed-hover");
  134. }
  135. };
  136. };
  137. function _34(e){
  138. var tt=$(e.target);
  139. if(tt.hasClass("tree-hit")){
  140. var tr=tt.closest("tr.datagrid-row");
  141. var _35=tr.closest("div.datagrid-view").children(".datagrid-f")[0];
  142. _36(_35,tr.attr("node-id"));
  143. }else{
  144. $.fn.datagrid.defaults.rowEvents.click(e);
  145. }
  146. };
  147. function _37(_38,_39){
  148. var _3a=$.data(_38,"treegrid").options;
  149. var tr1=_3a.finder.getTr(_38,_39,"body",1);
  150. var tr2=_3a.finder.getTr(_38,_39,"body",2);
  151. var _3b=$(_38).datagrid("getColumnFields",true).length+(_3a.rownumbers?1:0);
  152. var _3c=$(_38).datagrid("getColumnFields",false).length;
  153. _3d(tr1,_3b);
  154. _3d(tr2,_3c);
  155. function _3d(tr,_3e){
  156. $("<tr class=\"treegrid-tr-tree\">"+"<td style=\"border:0px\" colspan=\""+_3e+"\">"+"<div></div>"+"</td>"+"</tr>").insertAfter(tr);
  157. };
  158. };
  159. function _3f(_40,_41,_42,_43){
  160. var _44=$.data(_40,"treegrid");
  161. var _45=_44.options;
  162. var dc=_44.dc;
  163. _42=_45.loadFilter.call(_40,_42,_41);
  164. var _46=_47(_40,_41);
  165. if(_46){
  166. var _48=_45.finder.getTr(_40,_41,"body",1);
  167. var _49=_45.finder.getTr(_40,_41,"body",2);
  168. var cc1=_48.next("tr.treegrid-tr-tree").children("td").children("div");
  169. var cc2=_49.next("tr.treegrid-tr-tree").children("td").children("div");
  170. if(!_43){
  171. _46.children=[];
  172. }
  173. }else{
  174. var cc1=dc.body1;
  175. var cc2=dc.body2;
  176. if(!_43){
  177. _44.data=[];
  178. }
  179. }
  180. if(!_43){
  181. cc1.empty();
  182. cc2.empty();
  183. }
  184. if(_45.view.onBeforeRender){
  185. _45.view.onBeforeRender.call(_45.view,_40,_41,_42);
  186. }
  187. _45.view.render.call(_45.view,_40,cc1,true);
  188. _45.view.render.call(_45.view,_40,cc2,false);
  189. if(_45.showFooter){
  190. _45.view.renderFooter.call(_45.view,_40,dc.footer1,true);
  191. _45.view.renderFooter.call(_45.view,_40,dc.footer2,false);
  192. }
  193. if(_45.view.onAfterRender){
  194. _45.view.onAfterRender.call(_45.view,_40);
  195. }
  196. if(!_41&&_45.pagination){
  197. var _4a=$.data(_40,"treegrid").total;
  198. var _4b=$(_40).datagrid("getPager");
  199. if(_4b.pagination("options").total!=_4a){
  200. _4b.pagination({total:_4a});
  201. }
  202. }
  203. _26(_40);
  204. _2f(_40);
  205. $(_40).treegrid("showLines");
  206. $(_40).treegrid("setSelectionState");
  207. $(_40).treegrid("autoSizeColumn");
  208. _45.onLoadSuccess.call(_40,_46,_42);
  209. };
  210. function _25(_4c,_4d,_4e,_4f,_50){
  211. var _51=$.data(_4c,"treegrid").options;
  212. var _52=$(_4c).datagrid("getPanel").find("div.datagrid-body");
  213. if(_4e){
  214. _51.queryParams=_4e;
  215. }
  216. var _53=$.extend({},_51.queryParams);
  217. if(_51.pagination){
  218. $.extend(_53,{page:_51.pageNumber,rows:_51.pageSize});
  219. }
  220. if(_51.sortName){
  221. $.extend(_53,{sort:_51.sortName,order:_51.sortOrder});
  222. }
  223. var row=_47(_4c,_4d);
  224. if(_51.onBeforeLoad.call(_4c,row,_53)==false){
  225. return;
  226. }
  227. var _54=_52.find("tr[node-id=\""+_4d+"\"] span.tree-folder");
  228. _54.addClass("tree-loading");
  229. $(_4c).treegrid("loading");
  230. var _55=_51.loader.call(_4c,_53,function(_56){
  231. _54.removeClass("tree-loading");
  232. $(_4c).treegrid("loaded");
  233. _3f(_4c,_4d,_56,_4f);
  234. if(_50){
  235. _50();
  236. }
  237. },function(){
  238. _54.removeClass("tree-loading");
  239. $(_4c).treegrid("loaded");
  240. _51.onLoadError.apply(_4c,arguments);
  241. if(_50){
  242. _50();
  243. }
  244. });
  245. if(_55==false){
  246. _54.removeClass("tree-loading");
  247. $(_4c).treegrid("loaded");
  248. }
  249. };
  250. function _57(_58){
  251. var _59=_5a(_58);
  252. if(_59.length){
  253. return _59[0];
  254. }else{
  255. return null;
  256. }
  257. };
  258. function _5a(_5b){
  259. return $.data(_5b,"treegrid").data;
  260. };
  261. function _5c(_5d,_5e){
  262. var row=_47(_5d,_5e);
  263. if(row._parentId){
  264. return _47(_5d,row._parentId);
  265. }else{
  266. return null;
  267. }
  268. };
  269. function _2b(_5f,_60){
  270. var _61=$.data(_5f,"treegrid").options;
  271. var _62=$(_5f).datagrid("getPanel").find("div.datagrid-view2 div.datagrid-body");
  272. var _63=[];
  273. if(_60){
  274. _64(_60);
  275. }else{
  276. var _65=_5a(_5f);
  277. for(var i=0;i<_65.length;i++){
  278. _63.push(_65[i]);
  279. _64(_65[i][_61.idField]);
  280. }
  281. }
  282. function _64(_66){
  283. var _67=_47(_5f,_66);
  284. if(_67&&_67.children){
  285. for(var i=0,len=_67.children.length;i<len;i++){
  286. var _68=_67.children[i];
  287. _63.push(_68);
  288. _64(_68[_61.idField]);
  289. }
  290. }
  291. };
  292. return _63;
  293. };
  294. function _69(_6a,_6b){
  295. if(!_6b){
  296. return 0;
  297. }
  298. var _6c=$.data(_6a,"treegrid").options;
  299. var _6d=$(_6a).datagrid("getPanel").children("div.datagrid-view");
  300. var _6e=_6d.find("div.datagrid-body tr[node-id=\""+_6b+"\"]").children("td[field=\""+_6c.treeField+"\"]");
  301. return _6e.find("span.tree-indent,span.tree-hit").length;
  302. };
  303. function _47(_6f,_70){
  304. var _71=$.data(_6f,"treegrid").options;
  305. var _72=$.data(_6f,"treegrid").data;
  306. var cc=[_72];
  307. while(cc.length){
  308. var c=cc.shift();
  309. for(var i=0;i<c.length;i++){
  310. var _73=c[i];
  311. if(_73[_71.idField]==_70){
  312. return _73;
  313. }else{
  314. if(_73["children"]){
  315. cc.push(_73["children"]);
  316. }
  317. }
  318. }
  319. }
  320. return null;
  321. };
  322. function _74(_75,_76){
  323. var _77=$.data(_75,"treegrid").options;
  324. var row=_47(_75,_76);
  325. var tr=_77.finder.getTr(_75,_76);
  326. var hit=tr.find("span.tree-hit");
  327. if(hit.length==0){
  328. return;
  329. }
  330. if(hit.hasClass("tree-collapsed")){
  331. return;
  332. }
  333. if(_77.onBeforeCollapse.call(_75,row)==false){
  334. return;
  335. }
  336. hit.removeClass("tree-expanded tree-expanded-hover").addClass("tree-collapsed");
  337. hit.next().removeClass("tree-folder-open");
  338. row.state="closed";
  339. tr=tr.next("tr.treegrid-tr-tree");
  340. var cc=tr.children("td").children("div");
  341. if(_77.animate){
  342. cc.slideUp("normal",function(){
  343. $(_75).treegrid("autoSizeColumn");
  344. _26(_75,_76);
  345. _77.onCollapse.call(_75,row);
  346. });
  347. }else{
  348. cc.hide();
  349. $(_75).treegrid("autoSizeColumn");
  350. _26(_75,_76);
  351. _77.onCollapse.call(_75,row);
  352. }
  353. };
  354. function _78(_79,_7a){
  355. var _7b=$.data(_79,"treegrid").options;
  356. var tr=_7b.finder.getTr(_79,_7a);
  357. var hit=tr.find("span.tree-hit");
  358. var row=_47(_79,_7a);
  359. if(hit.length==0){
  360. return;
  361. }
  362. if(hit.hasClass("tree-expanded")){
  363. return;
  364. }
  365. if(_7b.onBeforeExpand.call(_79,row)==false){
  366. return;
  367. }
  368. hit.removeClass("tree-collapsed tree-collapsed-hover").addClass("tree-expanded");
  369. hit.next().addClass("tree-folder-open");
  370. var _7c=tr.next("tr.treegrid-tr-tree");
  371. if(_7c.length){
  372. var cc=_7c.children("td").children("div");
  373. _7d(cc);
  374. }else{
  375. _37(_79,row[_7b.idField]);
  376. var _7c=tr.next("tr.treegrid-tr-tree");
  377. var cc=_7c.children("td").children("div");
  378. cc.hide();
  379. var _7e=$.extend({},_7b.queryParams||{});
  380. _7e.id=row[_7b.idField];
  381. _25(_79,row[_7b.idField],_7e,true,function(){
  382. if(cc.is(":empty")){
  383. _7c.remove();
  384. }else{
  385. _7d(cc);
  386. }
  387. });
  388. }
  389. function _7d(cc){
  390. row.state="open";
  391. if(_7b.animate){
  392. cc.slideDown("normal",function(){
  393. $(_79).treegrid("autoSizeColumn");
  394. _26(_79,_7a);
  395. _7b.onExpand.call(_79,row);
  396. });
  397. }else{
  398. cc.show();
  399. $(_79).treegrid("autoSizeColumn");
  400. _26(_79,_7a);
  401. _7b.onExpand.call(_79,row);
  402. }
  403. };
  404. };
  405. function _36(_7f,_80){
  406. var _81=$.data(_7f,"treegrid").options;
  407. var tr=_81.finder.getTr(_7f,_80);
  408. var hit=tr.find("span.tree-hit");
  409. if(hit.hasClass("tree-expanded")){
  410. _74(_7f,_80);
  411. }else{
  412. _78(_7f,_80);
  413. }
  414. };
  415. function _82(_83,_84){
  416. var _85=$.data(_83,"treegrid").options;
  417. var _86=_2b(_83,_84);
  418. if(_84){
  419. _86.unshift(_47(_83,_84));
  420. }
  421. for(var i=0;i<_86.length;i++){
  422. _74(_83,_86[i][_85.idField]);
  423. }
  424. };
  425. function _87(_88,_89){
  426. var _8a=$.data(_88,"treegrid").options;
  427. var _8b=_2b(_88,_89);
  428. if(_89){
  429. _8b.unshift(_47(_88,_89));
  430. }
  431. for(var i=0;i<_8b.length;i++){
  432. _78(_88,_8b[i][_8a.idField]);
  433. }
  434. };
  435. function _8c(_8d,_8e){
  436. var _8f=$.data(_8d,"treegrid").options;
  437. var ids=[];
  438. var p=_5c(_8d,_8e);
  439. while(p){
  440. var id=p[_8f.idField];
  441. ids.unshift(id);
  442. p=_5c(_8d,id);
  443. }
  444. for(var i=0;i<ids.length;i++){
  445. _78(_8d,ids[i]);
  446. }
  447. };
  448. function _90(_91,_92){
  449. var _93=$.data(_91,"treegrid").options;
  450. if(_92.parent){
  451. var tr=_93.finder.getTr(_91,_92.parent);
  452. if(tr.next("tr.treegrid-tr-tree").length==0){
  453. _37(_91,_92.parent);
  454. }
  455. var _94=tr.children("td[field=\""+_93.treeField+"\"]").children("div.datagrid-cell");
  456. var _95=_94.children("span.tree-icon");
  457. if(_95.hasClass("tree-file")){
  458. _95.removeClass("tree-file").addClass("tree-folder tree-folder-open");
  459. var hit=$("<span class=\"tree-hit tree-expanded\"></span>").insertBefore(_95);
  460. if(hit.prev().length){
  461. hit.prev().remove();
  462. }
  463. }
  464. }
  465. _3f(_91,_92.parent,_92.data,true);
  466. };
  467. function _96(_97,_98){
  468. var ref=_98.before||_98.after;
  469. var _99=$.data(_97,"treegrid").options;
  470. var _9a=_5c(_97,ref);
  471. _90(_97,{parent:(_9a?_9a[_99.idField]:null),data:[_98.data]});
  472. var _9b=_9a?_9a.children:$(_97).treegrid("getRoots");
  473. for(var i=0;i<_9b.length;i++){
  474. if(_9b[i][_99.idField]==ref){
  475. var _9c=_9b[_9b.length-1];
  476. _9b.splice(_98.before?i:(i+1),0,_9c);
  477. _9b.splice(_9b.length-1,1);
  478. break;
  479. }
  480. }
  481. _9d(true);
  482. _9d(false);
  483. _2f(_97);
  484. $(_97).treegrid("showLines");
  485. function _9d(_9e){
  486. var _9f=_9e?1:2;
  487. var tr=_99.finder.getTr(_97,_98.data[_99.idField],"body",_9f);
  488. var _a0=tr.closest("table.datagrid-btable");
  489. tr=tr.parent().children();
  490. var _a1=_99.finder.getTr(_97,ref,"body",_9f);
  491. if(_98.before){
  492. tr.insertBefore(_a1);
  493. }else{
  494. var sub=_a1.next("tr.treegrid-tr-tree");
  495. tr.insertAfter(sub.length?sub:_a1);
  496. }
  497. _a0.remove();
  498. };
  499. };
  500. function _a2(_a3,_a4){
  501. var _a5=$.data(_a3,"treegrid");
  502. $(_a3).datagrid("deleteRow",_a4);
  503. _2f(_a3);
  504. _a5.total-=1;
  505. $(_a3).datagrid("getPager").pagination("refresh",{total:_a5.total});
  506. $(_a3).treegrid("showLines");
  507. };
  508. function _a6(_a7){
  509. var t=$(_a7);
  510. var _a8=t.treegrid("options");
  511. if(_a8.lines){
  512. t.treegrid("getPanel").addClass("tree-lines");
  513. }else{
  514. t.treegrid("getPanel").removeClass("tree-lines");
  515. return;
  516. }
  517. t.treegrid("getPanel").find("span.tree-indent").removeClass("tree-line tree-join tree-joinbottom");
  518. t.treegrid("getPanel").find("div.datagrid-cell").removeClass("tree-node-last tree-root-first tree-root-one");
  519. var _a9=t.treegrid("getRoots");
  520. if(_a9.length>1){
  521. _aa(_a9[0]).addClass("tree-root-first");
  522. }else{
  523. if(_a9.length==1){
  524. _aa(_a9[0]).addClass("tree-root-one");
  525. }
  526. }
  527. _ab(_a9);
  528. _ac(_a9);
  529. function _ab(_ad){
  530. $.map(_ad,function(_ae){
  531. if(_ae.children&&_ae.children.length){
  532. _ab(_ae.children);
  533. }else{
  534. var _af=_aa(_ae);
  535. _af.find(".tree-icon").prev().addClass("tree-join");
  536. }
  537. });
  538. if(_ad.length){
  539. var _b0=_aa(_ad[_ad.length-1]);
  540. _b0.addClass("tree-node-last");
  541. _b0.find(".tree-join").removeClass("tree-join").addClass("tree-joinbottom");
  542. }
  543. };
  544. function _ac(_b1){
  545. $.map(_b1,function(_b2){
  546. if(_b2.children&&_b2.children.length){
  547. _ac(_b2.children);
  548. }
  549. });
  550. for(var i=0;i<_b1.length-1;i++){
  551. var _b3=_b1[i];
  552. var _b4=t.treegrid("getLevel",_b3[_a8.idField]);
  553. var tr=_a8.finder.getTr(_a7,_b3[_a8.idField]);
  554. var cc=tr.next().find("tr.datagrid-row td[field=\""+_a8.treeField+"\"] div.datagrid-cell");
  555. cc.find("span:eq("+(_b4-1)+")").addClass("tree-line");
  556. }
  557. };
  558. function _aa(_b5){
  559. var tr=_a8.finder.getTr(_a7,_b5[_a8.idField]);
  560. var _b6=tr.find("td[field=\""+_a8.treeField+"\"] div.datagrid-cell");
  561. return _b6;
  562. };
  563. };
  564. $.fn.treegrid=function(_b7,_b8){
  565. if(typeof _b7=="string"){
  566. var _b9=$.fn.treegrid.methods[_b7];
  567. if(_b9){
  568. return _b9(this,_b8);
  569. }else{
  570. return this.datagrid(_b7,_b8);
  571. }
  572. }
  573. _b7=_b7||{};
  574. return this.each(function(){
  575. var _ba=$.data(this,"treegrid");
  576. if(_ba){
  577. $.extend(_ba.options,_b7);
  578. }else{
  579. _ba=$.data(this,"treegrid",{options:$.extend({},$.fn.treegrid.defaults,$.fn.treegrid.parseOptions(this),_b7),data:[]});
  580. }
  581. _1(this);
  582. if(_ba.options.data){
  583. $(this).treegrid("loadData",_ba.options.data);
  584. }
  585. _25(this);
  586. });
  587. };
  588. $.fn.treegrid.methods={options:function(jq){
  589. return $.data(jq[0],"treegrid").options;
  590. },resize:function(jq,_bb){
  591. return jq.each(function(){
  592. $(this).datagrid("resize",_bb);
  593. });
  594. },fixRowHeight:function(jq,_bc){
  595. return jq.each(function(){
  596. _26(this,_bc);
  597. });
  598. },loadData:function(jq,_bd){
  599. return jq.each(function(){
  600. _3f(this,_bd.parent,_bd);
  601. });
  602. },load:function(jq,_be){
  603. return jq.each(function(){
  604. $(this).treegrid("options").pageNumber=1;
  605. $(this).treegrid("getPager").pagination({pageNumber:1});
  606. $(this).treegrid("reload",_be);
  607. });
  608. },reload:function(jq,id){
  609. return jq.each(function(){
  610. var _bf=$(this).treegrid("options");
  611. var _c0={};
  612. if(typeof id=="object"){
  613. _c0=id;
  614. }else{
  615. _c0=$.extend({},_bf.queryParams);
  616. _c0.id=id;
  617. }
  618. if(_c0.id){
  619. var _c1=$(this).treegrid("find",_c0.id);
  620. if(_c1.children){
  621. _c1.children.splice(0,_c1.children.length);
  622. }
  623. _bf.queryParams=_c0;
  624. var tr=_bf.finder.getTr(this,_c0.id);
  625. tr.next("tr.treegrid-tr-tree").remove();
  626. tr.find("span.tree-hit").removeClass("tree-expanded tree-expanded-hover").addClass("tree-collapsed");
  627. _78(this,_c0.id);
  628. }else{
  629. _25(this,null,_c0);
  630. }
  631. });
  632. },reloadFooter:function(jq,_c2){
  633. return jq.each(function(){
  634. var _c3=$.data(this,"treegrid").options;
  635. var dc=$.data(this,"datagrid").dc;
  636. if(_c2){
  637. $.data(this,"treegrid").footer=_c2;
  638. }
  639. if(_c3.showFooter){
  640. _c3.view.renderFooter.call(_c3.view,this,dc.footer1,true);
  641. _c3.view.renderFooter.call(_c3.view,this,dc.footer2,false);
  642. if(_c3.view.onAfterRender){
  643. _c3.view.onAfterRender.call(_c3.view,this);
  644. }
  645. $(this).treegrid("fixRowHeight");
  646. }
  647. });
  648. },getData:function(jq){
  649. return $.data(jq[0],"treegrid").data;
  650. },getFooterRows:function(jq){
  651. return $.data(jq[0],"treegrid").footer;
  652. },getRoot:function(jq){
  653. return _57(jq[0]);
  654. },getRoots:function(jq){
  655. return _5a(jq[0]);
  656. },getParent:function(jq,id){
  657. return _5c(jq[0],id);
  658. },getChildren:function(jq,id){
  659. return _2b(jq[0],id);
  660. },getLevel:function(jq,id){
  661. return _69(jq[0],id);
  662. },find:function(jq,id){
  663. return _47(jq[0],id);
  664. },isLeaf:function(jq,id){
  665. var _c4=$.data(jq[0],"treegrid").options;
  666. var tr=_c4.finder.getTr(jq[0],id);
  667. var hit=tr.find("span.tree-hit");
  668. return hit.length==0;
  669. },select:function(jq,id){
  670. return jq.each(function(){
  671. $(this).datagrid("selectRow",id);
  672. });
  673. },unselect:function(jq,id){
  674. return jq.each(function(){
  675. $(this).datagrid("unselectRow",id);
  676. });
  677. },collapse:function(jq,id){
  678. return jq.each(function(){
  679. _74(this,id);
  680. });
  681. },expand:function(jq,id){
  682. return jq.each(function(){
  683. _78(this,id);
  684. });
  685. },toggle:function(jq,id){
  686. return jq.each(function(){
  687. _36(this,id);
  688. });
  689. },collapseAll:function(jq,id){
  690. return jq.each(function(){
  691. _82(this,id);
  692. });
  693. },expandAll:function(jq,id){
  694. return jq.each(function(){
  695. _87(this,id);
  696. });
  697. },expandTo:function(jq,id){
  698. return jq.each(function(){
  699. _8c(this,id);
  700. });
  701. },append:function(jq,_c5){
  702. return jq.each(function(){
  703. _90(this,_c5);
  704. });
  705. },insert:function(jq,_c6){
  706. return jq.each(function(){
  707. _96(this,_c6);
  708. });
  709. },remove:function(jq,id){
  710. return jq.each(function(){
  711. _a2(this,id);
  712. });
  713. },pop:function(jq,id){
  714. var row=jq.treegrid("find",id);
  715. jq.treegrid("remove",id);
  716. return row;
  717. },refresh:function(jq,id){
  718. return jq.each(function(){
  719. var _c7=$.data(this,"treegrid").options;
  720. _c7.view.refreshRow.call(_c7.view,this,id);
  721. });
  722. },update:function(jq,_c8){
  723. return jq.each(function(){
  724. var _c9=$.data(this,"treegrid").options;
  725. _c9.view.updateRow.call(_c9.view,this,_c8.id,_c8.row);
  726. });
  727. },beginEdit:function(jq,id){
  728. return jq.each(function(){
  729. $(this).datagrid("beginEdit",id);
  730. $(this).treegrid("fixRowHeight",id);
  731. });
  732. },endEdit:function(jq,id){
  733. return jq.each(function(){
  734. $(this).datagrid("endEdit",id);
  735. });
  736. },cancelEdit:function(jq,id){
  737. return jq.each(function(){
  738. $(this).datagrid("cancelEdit",id);
  739. });
  740. },showLines:function(jq){
  741. return jq.each(function(){
  742. _a6(this);
  743. });
  744. }};
  745. $.fn.treegrid.parseOptions=function(_ca){
  746. return $.extend({},$.fn.datagrid.parseOptions(_ca),$.parser.parseOptions(_ca,["treeField",{animate:"boolean"}]));
  747. };
  748. var _cb=$.extend({},$.fn.datagrid.defaults.view,{render:function(_cc,_cd,_ce){
  749. var _cf=$.data(_cc,"treegrid").options;
  750. var _d0=$(_cc).datagrid("getColumnFields",_ce);
  751. var _d1=$.data(_cc,"datagrid").rowIdPrefix;
  752. if(_ce){
  753. if(!(_cf.rownumbers||(_cf.frozenColumns&&_cf.frozenColumns.length))){
  754. return;
  755. }
  756. }
  757. var _d2=this;
  758. if(this.treeNodes&&this.treeNodes.length){
  759. var _d3=_d4(_ce,this.treeLevel,this.treeNodes);
  760. $(_cd).append(_d3.join(""));
  761. }
  762. function _d4(_d5,_d6,_d7){
  763. var _d8=$(_cc).treegrid("getParent",_d7[0][_cf.idField]);
  764. var _d9=(_d8?_d8.children.length:$(_cc).treegrid("getRoots").length)-_d7.length;
  765. var _da=["<table class=\"datagrid-btable\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\"><tbody>"];
  766. for(var i=0;i<_d7.length;i++){
  767. var row=_d7[i];
  768. if(row.state!="open"&&row.state!="closed"){
  769. row.state="open";
  770. }
  771. var css=_cf.rowStyler?_cf.rowStyler.call(_cc,row):"";
  772. var _db="";
  773. var _dc="";
  774. if(typeof css=="string"){
  775. _dc=css;
  776. }else{
  777. if(css){
  778. _db=css["class"]||"";
  779. _dc=css["style"]||"";
  780. }
  781. }
  782. var cls="class=\"datagrid-row "+(_d9++%2&&_cf.striped?"datagrid-row-alt ":" ")+_db+"\"";
  783. var _dd=_dc?"style=\""+_dc+"\"":"";
  784. var _de=_d1+"-"+(_d5?1:2)+"-"+row[_cf.idField];
  785. _da.push("<tr id=\""+_de+"\" node-id=\""+row[_cf.idField]+"\" "+cls+" "+_dd+">");
  786. _da=_da.concat(_d2.renderRow.call(_d2,_cc,_d0,_d5,_d6,row));
  787. _da.push("</tr>");
  788. if(row.children&&row.children.length){
  789. var tt=_d4(_d5,_d6+1,row.children);
  790. var v=row.state=="closed"?"none":"block";
  791. _da.push("<tr class=\"treegrid-tr-tree\"><td style=\"border:0px\" colspan="+(_d0.length+(_cf.rownumbers?1:0))+"><div style=\"display:"+v+"\">");
  792. _da=_da.concat(tt);
  793. _da.push("</div></td></tr>");
  794. }
  795. }
  796. _da.push("</tbody></table>");
  797. return _da;
  798. };
  799. },renderFooter:function(_df,_e0,_e1){
  800. var _e2=$.data(_df,"treegrid").options;
  801. var _e3=$.data(_df,"treegrid").footer||[];
  802. var _e4=$(_df).datagrid("getColumnFields",_e1);
  803. var _e5=["<table class=\"datagrid-ftable\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\"><tbody>"];
  804. for(var i=0;i<_e3.length;i++){
  805. var row=_e3[i];
  806. row[_e2.idField]=row[_e2.idField]||("foot-row-id"+i);
  807. _e5.push("<tr class=\"datagrid-row\" node-id=\""+row[_e2.idField]+"\">");
  808. _e5.push(this.renderRow.call(this,_df,_e4,_e1,0,row));
  809. _e5.push("</tr>");
  810. }
  811. _e5.push("</tbody></table>");
  812. $(_e0).html(_e5.join(""));
  813. },renderRow:function(_e6,_e7,_e8,_e9,row){
  814. var _ea=$.data(_e6,"treegrid").options;
  815. var cc=[];
  816. if(_e8&&_ea.rownumbers){
  817. cc.push("<td class=\"datagrid-td-rownumber\"><div class=\"datagrid-cell-rownumber\">0</div></td>");
  818. }
  819. for(var i=0;i<_e7.length;i++){
  820. var _eb=_e7[i];
  821. var col=$(_e6).datagrid("getColumnOption",_eb);
  822. if(col){
  823. var css=col.styler?(col.styler(row[_eb],row)||""):"";
  824. var _ec="";
  825. var _ed="";
  826. if(typeof css=="string"){
  827. _ed=css;
  828. }else{
  829. if(cc){
  830. _ec=css["class"]||"";
  831. _ed=css["style"]||"";
  832. }
  833. }
  834. var cls=_ec?"class=\""+_ec+"\"":"";
  835. var _ee=col.hidden?"style=\"display:none;"+_ed+"\"":(_ed?"style=\""+_ed+"\"":"");
  836. cc.push("<td field=\""+_eb+"\" "+cls+" "+_ee+">");
  837. var _ee="";
  838. if(!col.checkbox){
  839. if(col.align){
  840. _ee+="text-align:"+col.align+";";
  841. }
  842. if(!_ea.nowrap){
  843. _ee+="white-space:normal;height:auto;";
  844. }else{
  845. if(_ea.autoRowHeight){
  846. _ee+="height:auto;";
  847. }
  848. }
  849. }
  850. cc.push("<div style=\""+_ee+"\" ");
  851. if(col.checkbox){
  852. cc.push("class=\"datagrid-cell-check ");
  853. }else{
  854. cc.push("class=\"datagrid-cell "+col.cellClass);
  855. }
  856. cc.push("\">");
  857. if(col.checkbox){
  858. if(row.checked){
  859. cc.push("<input type=\"checkbox\" checked=\"checked\"");
  860. }else{
  861. cc.push("<input type=\"checkbox\"");
  862. }
  863. cc.push(" name=\""+_eb+"\" value=\""+(row[_eb]!=undefined?row[_eb]:"")+"\">");
  864. }else{
  865. var val=null;
  866. if(col.formatter){
  867. val=col.formatter(row[_eb],row);
  868. }else{
  869. val=row[_eb];
  870. }
  871. if(_eb==_ea.treeField){
  872. for(var j=0;j<_e9;j++){
  873. cc.push("<span class=\"tree-indent\"></span>");
  874. }
  875. if(row.state=="closed"){
  876. cc.push("<span class=\"tree-hit tree-collapsed\"></span>");
  877. cc.push("<span class=\"tree-icon tree-folder "+(row.iconCls?row.iconCls:"")+"\"></span>");
  878. }else{
  879. if(row.children&&row.children.length){
  880. cc.push("<span class=\"tree-hit tree-expanded\"></span>");
  881. cc.push("<span class=\"tree-icon tree-folder tree-folder-open "+(row.iconCls?row.iconCls:"")+"\"></span>");
  882. }else{
  883. cc.push("<span class=\"tree-indent\"></span>");
  884. cc.push("<span class=\"tree-icon tree-file "+(row.iconCls?row.iconCls:"")+"\"></span>");
  885. }
  886. }
  887. cc.push("<span class=\"tree-title\">"+val+"</span>");
  888. }else{
  889. cc.push(val);
  890. }
  891. }
  892. cc.push("</div>");
  893. cc.push("</td>");
  894. }
  895. }
  896. return cc.join("");
  897. },refreshRow:function(_ef,id){
  898. this.updateRow.call(this,_ef,id,{});
  899. },updateRow:function(_f0,id,row){
  900. var _f1=$.data(_f0,"treegrid").options;
  901. var _f2=$(_f0).treegrid("find",id);
  902. $.extend(_f2,row);
  903. var _f3=$(_f0).treegrid("getLevel",id)-1;
  904. var _f4=_f1.rowStyler?_f1.rowStyler.call(_f0,_f2):"";
  905. var _f5=$.data(_f0,"datagrid").rowIdPrefix;
  906. var _f6=_f2[_f1.idField];
  907. function _f7(_f8){
  908. var _f9=$(_f0).treegrid("getColumnFields",_f8);
  909. var tr=_f1.finder.getTr(_f0,id,"body",(_f8?1:2));
  910. var _fa=tr.find("div.datagrid-cell-rownumber").html();
  911. var _fb=tr.find("div.datagrid-cell-check input[type=checkbox]").is(":checked");
  912. tr.html(this.renderRow(_f0,_f9,_f8,_f3,_f2));
  913. tr.attr("style",_f4||"");
  914. tr.find("div.datagrid-cell-rownumber").html(_fa);
  915. if(_fb){
  916. tr.find("div.datagrid-cell-check input[type=checkbox]")._propAttr("checked",true);
  917. }
  918. if(_f6!=id){
  919. tr.attr("id",_f5+"-"+(_f8?1:2)+"-"+_f6);
  920. tr.attr("node-id",_f6);
  921. }
  922. };
  923. _f7.call(this,true);
  924. _f7.call(this,false);
  925. $(_f0).treegrid("fixRowHeight",id);
  926. },deleteRow:function(_fc,id){
  927. var _fd=$.data(_fc,"treegrid").options;
  928. var tr=_fd.finder.getTr(_fc,id);
  929. tr.next("tr.treegrid-tr-tree").remove();
  930. tr.remove();
  931. var _fe=del(id);
  932. if(_fe){
  933. if(_fe.children.length==0){
  934. tr=_fd.finder.getTr(_fc,_fe[_fd.idField]);
  935. tr.next("tr.treegrid-tr-tree").remove();
  936. var _ff=tr.children("td[field=\""+_fd.treeField+"\"]").children("div.datagrid-cell");
  937. _ff.find(".tree-icon").removeClass("tree-folder").addClass("tree-file");
  938. _ff.find(".tree-hit").remove();
  939. $("<span class=\"tree-indent\"></span>").prependTo(_ff);
  940. }
  941. }
  942. function del(id){
  943. var cc;
  944. var _100=$(_fc).treegrid("getParent",id);
  945. if(_100){
  946. cc=_100.children;
  947. }else{
  948. cc=$(_fc).treegrid("getData");
  949. }
  950. for(var i=0;i<cc.length;i++){
  951. if(cc[i][_fd.idField]==id){
  952. cc.splice(i,1);
  953. break;
  954. }
  955. }
  956. return _100;
  957. };
  958. },onBeforeRender:function(_101,_102,data){
  959. if($.isArray(_102)){
  960. data={total:_102.length,rows:_102};
  961. _102=null;
  962. }
  963. if(!data){
  964. return false;
  965. }
  966. var _103=$.data(_101,"treegrid");
  967. var opts=_103.options;
  968. if(data.length==undefined){
  969. if(data.footer){
  970. _103.footer=data.footer;
  971. }
  972. if(data.total){
  973. _103.total=data.total;
  974. }
  975. data=this.transfer(_101,_102,data.rows);
  976. }else{
  977. function _104(_105,_106){
  978. for(var i=0;i<_105.length;i++){
  979. var row=_105[i];
  980. row._parentId=_106;
  981. if(row.children&&row.children.length){
  982. _104(row.children,row[opts.idField]);
  983. }
  984. }
  985. };
  986. _104(data,_102);
  987. }
  988. var node=_47(_101,_102);
  989. if(node){
  990. if(node.children){
  991. node.children=node.children.concat(data);
  992. }else{
  993. node.children=data;
  994. }
  995. }else{
  996. _103.data=_103.data.concat(data);
  997. }
  998. this.sort(_101,data);
  999. this.treeNodes=data;
  1000. this.treeLevel=$(_101).treegrid("getLevel",_102);
  1001. },sort:function(_107,data){
  1002. var opts=$.data(_107,"treegrid").options;
  1003. if(!opts.remoteSort&&opts.sortName){
  1004. var _108=opts.sortName.split(",");
  1005. var _109=opts.sortOrder.split(",");
  1006. _10a(data);
  1007. }
  1008. function _10a(rows){
  1009. rows.sort(function(r1,r2){
  1010. var r=0;
  1011. for(var i=0;i<_108.length;i++){
  1012. var sn=_108[i];
  1013. var so=_109[i];
  1014. var col=$(_107).treegrid("getColumnOption",sn);
  1015. var _10b=col.sorter||function(a,b){
  1016. return a==b?0:(a>b?1:-1);
  1017. };
  1018. r=_10b(r1[sn],r2[sn])*(so=="asc"?1:-1);
  1019. if(r!=0){
  1020. return r;
  1021. }
  1022. }
  1023. return r;
  1024. });
  1025. for(var i=0;i<rows.length;i++){
  1026. var _10c=rows[i].children;
  1027. if(_10c&&_10c.length){
  1028. _10a(_10c);
  1029. }
  1030. }
  1031. };
  1032. },transfer:function(_10d,_10e,data){
  1033. var opts=$.data(_10d,"treegrid").options;
  1034. var rows=[];
  1035. for(var i=0;i<data.length;i++){
  1036. rows.push(data[i]);
  1037. }
  1038. var _10f=[];
  1039. for(var i=0;i<rows.length;i++){
  1040. var row=rows[i];
  1041. if(!_10e){
  1042. if(!row._parentId){
  1043. _10f.push(row);
  1044. rows.splice(i,1);
  1045. i--;
  1046. }
  1047. }else{
  1048. if(row._parentId==_10e){
  1049. _10f.push(row);
  1050. rows.splice(i,1);
  1051. i--;
  1052. }
  1053. }
  1054. }
  1055. var toDo=[];
  1056. for(var i=0;i<_10f.length;i++){
  1057. toDo.push(_10f[i]);
  1058. }
  1059. while(toDo.length){
  1060. var node=toDo.shift();
  1061. for(var i=0;i<rows.length;i++){
  1062. var row=rows[i];
  1063. if(row._parentId==node[opts.idField]){
  1064. if(node.children){
  1065. node.children.push(row);
  1066. }else{
  1067. node.children=[row];
  1068. }
  1069. toDo.push(row);
  1070. rows.splice(i,1);
  1071. i--;
  1072. }
  1073. }
  1074. }
  1075. return _10f;
  1076. }});
  1077. $.fn.treegrid.defaults=$.extend({},$.fn.datagrid.defaults,{treeField:null,lines:false,animate:false,singleSelect:true,view:_cb,rowEvents:$.extend({},$.fn.datagrid.defaults.rowEvents,{mouseover:_32(true),mouseout:_32(false),click:_34}),loader:function(_110,_111,_112){
  1078. var opts=$(this).treegrid("options");
  1079. if(!opts.url){
  1080. return false;
  1081. }
  1082. $.ajax({type:opts.method,url:opts.url,data:_110,dataType:"json",success:function(data){
  1083. _111(data);
  1084. },error:function(){
  1085. _112.apply(this,arguments);
  1086. }});
  1087. },loadFilter:function(data,_113){
  1088. return data;
  1089. },finder:{getTr:function(_114,id,type,_115){
  1090. type=type||"body";
  1091. _115=_115||0;
  1092. var dc=$.data(_114,"datagrid").dc;
  1093. if(_115==0){
  1094. var opts=$.data(_114,"treegrid").options;
  1095. var tr1=opts.finder.getTr(_114,id,type,1);
  1096. var tr2=opts.finder.getTr(_114,id,type,2);
  1097. return tr1.add(tr2);
  1098. }else{
  1099. if(type=="body"){
  1100. var tr=$("#"+$.data(_114,"datagrid").rowIdPrefix+"-"+_115+"-"+id);
  1101. if(!tr.length){
  1102. tr=(_115==1?dc.body1:dc.body2).find("tr[node-id=\""+id+"\"]");
  1103. }
  1104. return tr;
  1105. }else{
  1106. if(type=="footer"){
  1107. return (_115==1?dc.footer1:dc.footer2).find("tr[node-id=\""+id+"\"]");
  1108. }else{
  1109. if(type=="selected"){
  1110. return (_115==1?dc.body1:dc.body2).find("tr.datagrid-row-selected");
  1111. }else{
  1112. if(type=="highlight"){
  1113. return (_115==1?dc.body1:dc.body2).find("tr.datagrid-row-over");
  1114. }else{
  1115. if(type=="checked"){
  1116. return (_115==1?dc.body1:dc.body2).find("tr.datagrid-row-checked");
  1117. }else{
  1118. if(type=="last"){
  1119. return (_115==1?dc.body1:dc.body2).find("tr:last[node-id]");
  1120. }else{
  1121. if(type=="allbody"){
  1122. return (_115==1?dc.body1:dc.body2).find("tr[node-id]");
  1123. }else{
  1124. if(type=="allfooter"){
  1125. return (_115==1?dc.footer1:dc.footer2).find("tr[node-id]");
  1126. }
  1127. }
  1128. }
  1129. }
  1130. }
  1131. }
  1132. }
  1133. }
  1134. }
  1135. },getRow:function(_116,p){
  1136. var id=(typeof p=="object")?p.attr("node-id"):p;
  1137. return $(_116).treegrid("find",id);
  1138. },getRows:function(_117){
  1139. return $(_117).treegrid("getChildren");
  1140. }},onBeforeLoad:function(row,_118){
  1141. },onLoadSuccess:function(row,data){
  1142. },onLoadError:function(){
  1143. },onBeforeCollapse:function(row){
  1144. },onCollapse:function(row){
  1145. },onBeforeExpand:function(row){
  1146. },onExpand:function(row){
  1147. },onClickRow:function(row){
  1148. },onDblClickRow:function(row){
  1149. },onClickCell:function(_119,row){
  1150. },onDblClickCell:function(_11a,row){
  1151. },onContextMenu:function(e,row){
  1152. },onBeforeEdit:function(row){
  1153. },onAfterEdit:function(row,_11b){
  1154. },onCancelEdit:function(row){
  1155. }});
  1156. })(jQuery);