DhtmlXtree控件应用.doc_第1页
DhtmlXtree控件应用.doc_第2页
DhtmlXtree控件应用.doc_第3页
DhtmlXtree控件应用.doc_第4页
DhtmlXtree控件应用.doc_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 把数据库里的数据组成xml格式的字符串ComponentFavorFactory类内容如下:Java代码 1 public static String getFavorTree(String UserId,HttpServletRequest request) 2 3 ApplicationContext ctx = WebApplicationContextUtils 4 5 .getRequiredWebApplicationContext(request.getSession().getServletContext(); 6 7 8 9 IFavoriteMgr favoriteMgr = (IFavoriteMgr)ctx.getBean(favoriteMgr); 10 11 /查询UserId用户所拥有的收藏夹列表 12 13 List userFavoriteList = favoriteMgr.getUserFavoriteDoc(UserId); 14 15 16 17 / StringBuffer来组装xml字符串 18 19 StringBuffer strBuf = new StringBuffer(); 20 21 22 23 / 设置数据源 24 25 List nodeList = new ArrayList(); 26 27 Map root = new HashMap(); 28 29 30 31 String rootid = 0; 32 33 String rootName=默认收藏夹; 34 35 36 37 /这里主要是项目需要在每个用户还没有收藏任何文档,也没新建收藏夹前提下,自己为其建一个默认收藏夹。新收藏的文档首先默认放在默认收藏夹目录下,然后用户可根据自己的需要移动到用户自建的收藏夹目录下 38 39 for(Iterator iter = userFavoriteList.iterator();iter.hasNext();) 40 41 FavoriteInfo favorite = (FavoriteInfo)iter.next(); 42 43 if(默认收藏夹.equals(favorite.getFavorName() 44 45 rootid = favorite.getFavorId(); 46 47 rootName = favorite.getFavorName(); 48 49 50 51 52 53 54 55 strBuf.append( ); 56 57 58 59 /获取每个收藏夹下的文档列表 60 61 for(Iterator iter = userFavoriteList.iterator();iter.hasNext();) 62 63 FavoriteInfo favorite = (FavoriteInfo)iter.next(); 64 65 66 67 /默认收藏夹下未归类的文档 68 69 if(rootid.equals(favorite.getFavorId() 70 71 List userFavoriteDocList = favorite.getFavoriteDocList(); 72 73 if(userFavoriteDocList!=null) 74 75 for(Iterator iter2 = userFavoriteDocList.iterator();iter2.hasNext();) 76 77 FavoriteDocInfo favoriteDoc = (FavoriteDocInfo)iter2.next(); 78 79 strBuf.append(); 80 81 82 83 84 85 else 86 87 /默认收藏夹下用户自建的收藏夹列表 88 89 strBuf.append(); 90 91 92 93 /用户自建的收藏夹下的文档列表 94 95 List userFavoriteDocList = favorite.getFavoriteDocList(); 96 97 if(userFavoriteDocList!=null) 98 99 for(Iterator iter2 = userFavoriteDocList.iterator();iter2.hasNext();) 100 101 FavoriteDocInfo favoriteDoc = (FavoriteDocInfo)iter2.next(); 102 103 strBuf.append(); 104 105 106 107 108 109 strBuf.append(); 110 111 112 113 114 115 strBuf.append(); 116 117 strBuf.append(); 118 119 / System.out.println(strBuf.toString(); 120 121 return strBuf.toString(); 122 123 JSP页面:1.树显示页面:Java代码 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 收藏夹管理 141 142 143 144 145 146 147 148 149 150 .createSpan,.createSpan td font-size : 12px; background-color:white; 151 152 153 html 154 155 overflow-y:auto!important; 156 157 *overflow-y:scroll; 158 159 160 161 body 162 163 SCROLLBAR-FACE-COLOR: #B7E6FC; 164 165 SCROLLBAR-3DLIGHT-COLOR: #EEFAFF; 166 167 SCROLLBAR-DARKSHADOW-COLOR: #6DC5EE; 168 169 SCROLLBAR-BASE-COLOR: #D9F2FB; 170 171 172 173 174 175 script language=JavaScript src=/codebase/dhtmlxcommon.js 176 177 script Type=text/javascript Src=/codebase/dhtmlxtree.js 178 179 script Type=text/javascript Src=/codebase/ext/dhtmlxtree_dragin.js 180 181 script Type=text/javascript Src=/codebase/ext/dhtmlxtree_ed.js 182 183 script Type=text/javascript Src=/codebase/ext/dhtmlxtree_er.js 184 185 script Type=text/javascript Src=/codebase/ext/dhtmlxtree_json.js 186 187 script Type=text/javascript Src=/codebase/ext/dhtmlxtree_start.js 188 189 190 191 script language=javascript src=/js/prototype.js 192 193 194 195 /删除文档或文件夹 196 197 function del(id) 198 /alert(id); 199 if(confirm(是否确定删除)=true) 200 DoSubmit(id); 201 202 203 204 function DoSubmit(id) 205 206 207 var url = /favorite/delete!delete.do; 208 var params = id=+id; 209 var myAjax = new Ajax.Request( 210 url, 211 212 method: POST, 213 parameters:params, 214 onComplete: processDelResponse, 215 asynchronous:true 216 ); 217 218 219 function processDelResponse(request) 220 221 var result = request.responseText; 222 / alert(result); 223 if(result=success) 224 /数据库里删除成功才删除树显示页面上的节点 225 tree.deleteItem(tree.getSelectedItemId(); 226 showmsg(删除成功!); 227 else 228 showmsg(删除失败!); 229 230 231 232 /移动文档 233 function move() 234 235 var favCount = 0; 236 237 var docCount = 0; 238 239 var favorId = ; 240 241 var docIds = ; 242 243 var str = tree.getAllChecked(); 244 245 if(null=str|=str) 246 alert(请选择); 247 return ; 248 249 250 var arrayStr = new Array(); 251 252 arrayStr = str.split(,); 253 254 for(var i=0;i1) 291 292 alert(只能选择一个收藏夹); 293 294 return; 295 296 297 298 if(favCount=0) 299 300 alert(请选择一个收藏夹); 301 302 return ; 303 304 305 306 if(docCount=0) 307 308 alert(请选择需移动的文档); 309 310 return; 311 312 313 314 $(nodeId).value = docIds; 315 316 var url = /favorite/move!move.do; 317 318 var params = docIds= + docIds + &favorId= + favorId; 319 320 var myAjax = new Ajax.Request( 321 322 url, 323 324 325 326 method: POST, 327 328 parameters:params, 329 330 onComplete: processMoveResponse, 331 332 asynchronous:true 333 334 ); 335 336 337 338 function processMoveResponse(request) 339 340 var result = request.responseText; 341 342 if(result=success) 343 344 var id2 = $(targetId).value; 345 346 var ids = $(nodeId).value; 347 348 var arrayIds = new Array(); 349 350 arrayIds = ids.split(,); 351 352 for(var i=0;iarrayIds.length;i+) 353 354 var id =doc+ arrayIdsi; 355 356 tree.moveItem(id,item_child,id2); 357 358 359 360 else 361 362 alert(操作失败!); 363 364 365 366 367 368 369 370 371 372 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 /右击菜单生成 415 416 var oPopup = window.createPopup(); 417 418 var oPopBody = oPopup.document.body; 419 420 /菜单生成 421 422 function tonrightclick(id,e) 423 424 tree.selectItem(id,true); 425 426 if(rot=id.substring(0,3) 427 428 oPopBody.innerHTML = 新建 ; 429 430 oPopup.show(document.body.scrollLeft+e.clientX+10,document.body.scrollTop+e.clientY+10, 55, 16, document.body); 431 432 else if(doc=id.substring(0,3) 433 434 var idStr=+id+; 435 436 oPopBody.innerHTML = 阅读-删除 ; 437 438 oPopup.show(document.body.scrollLeft+e.clientX+10,document.body.scrollTop+e.clientY+10, 55, 44, document.body); 439 440 else 441 442 var idStr=+id+; 443 444 oPopBody.innerHTML = 修改-删除 ; 445 446 oPopup.show(document.body.scrollLeft+e.clientX+10,document.body.scrollTop+e.clientY+10, 55, 44, document.body); 447 448 449 450 ; 451 452 /打开新增收藏夹界面 453 454 function newopenwindow() 455 456 window.parent.open (/DataManager/apps/doc/favorite/favoriteInfoAdd.jsp, newwindow2, height=200, width=400, top=200, left=600, toolbar=no, menubar=no, scrollbars=no, resizable=no,location=no, status=no); 457 458 459 460 /单击阅读浏览该文档的信息 461 462 function oneclick(id) 463 464 var docId = id.substring(3,id.length); 465 466 var url = /DataManager/document/documentAction!searchDocumentInfo.do?docId=+docId; 467 468 window.open(url); 469 470 471 472 /单击修改弹出修改收藏夹名称的页面 473 474 function editclick(id) 475 476 $(oldFavorId).value=id; 477 478 var str = +tree.getItemText(id); 479 480 $(oldFavorName).value=str.substring(str.indexOf(value=)+6,str.indexOf(); 481 482 window.parent.open (/DataManager/apps/doc/favorite/favoriteInfoEdit.jsp, newwindow2, height=200, width=400, top=200, left=600, toolbar=no, menubar=no, scrollbars=no, resizable=no,location=no, status=no); 483 484 485 486 /修改成功后,再接着修改树上的被修改节点的内容 487 488 function editnode(favorname) 489 490 var itemId = $(oldFavorId).value; 491 492 tree.setItemText(itemId,favorname); 493 494 495 496 /新增收藏夹成功后,在树上添加节点 497 498 function addnode(favorId,favorname) 499 500 tree.insertNewChild(tree.getSelectedItemId(),favorId,favorname,0,folder.gif ,openfolder.gif,folder.gif,); 501 502 503 504 /在选上复选框,弹出移动菜单 505 506 function toncheck(id,e) 507 508 if(null!=tree.getAllChecked()&!=tree.getAllChecked() 509 510 oPopBody.innerHTML = 移动 ; 511 512 oPopup.show(130,6, 55, 16, document.body); 513 514 515 516 517 518 /因本项目中这个页面是在首页的iframe中显示,而DhtmlXtree采用的是在span显示节点的内容,故导致节点内容过长无法显示问题。所以这里采用当鼠标移动节点上时在鼠标所在位置显示该节点的全部内容 519 520 function createSpan(id) 521 522 var dragSpan = document.createElement(div); 523 524 var text=+ tree.getItemText(id)+; 525 526 dragSpan.innerHTML=text; 527 528 dragSpan.id=showText; 529 530 dragSpan.style.position=absolute; 531 532 dragSpan.style.left= document.body.scrollLeft+event.clientX; 533 534 dragSpan.style.top= document.body.scrollTop+event.clientY; 535 536 / alert(dragSpan.style.left+=+dragSpan.style.top); 537 538 dragSpan.style.zIndex = 1; 539 540 dragSpan.className=createSpan; 541 542 document.body.appendChild(dragSpan); 543 544 545 546 /鼠标离开时则弹出的层也消失 547 548 Function removeSpan(id) 549 550 var divSpan = document.getElementById(showText); 551 552 if(null!=divSpan) 553 554 divSpan.removeNode(true); 555 556 557 558 559 560 /载入 561 562 function load() 563 564 /树 565 566 tree=new dhtmlXTreeObject(treeboxbox_tree,100%,100%,0); 567 568 tree.setImagePath(/DataManager/codebase/imgs/csh_vista/); 569 570 571 572 tree.enableCheckBoxes(1); 573 574 tree.enableTh

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论