dhtmlxtree api中文
from http://legendswallow.javaeye.com/blog/560375
dhtmlXTree是一個功能比較強(qiáng)大的樹控件,基本上能滿足大部分常規(guī)需求,比較好用。
??? 當(dāng)然,在使用過程中還是發(fā)現(xiàn)一點點問題。下面是我整理的一些里面常用函數(shù)的說明(只有簡單的說明,如果要看詳細(xì)的說明,自己查看原函數(shù)去):
構(gòu)造函數(shù)
dhtmlXTreeObject(htmlObject, width, height, rootId)//rootId 虛擬根節(jié)點,在界面上不會顯示,一般取值0
replace IMG tag with background images - solve problem with IE image caching , not works for IE6 SP1
enableIEImageFix(mode)
析構(gòu)函數(shù)
destructor()
實現(xiàn)繼承
clone()
節(jié)點構(gòu)造函數(shù)
dhtmlXTreeItemObject(itemId,itemText,parentObject,treeObject,actionHandler,mode)// mode - do not show images
從xml字符串加載樹
loadXMLString(xmlString,afterCall)//afterCall - function which will be called after xml loading
從xml文件加載樹
loadXML(file,afterCall)
新建子節(jié)點,前三個參數(shù)為必須的
insertNewItem(parentId,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,childs)
insertNewChild(parentId,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,childs)
節(jié)點展開與收縮:[1-close 2-open]
_HideShow(itemObject,mode)
獲取節(jié)點狀態(tài):0 - 沒有子節(jié)點, -1 - 節(jié)點合攏, 1 - 節(jié)點展開
_getOpenState(node)
getOpenState(itemId)
獲取選中的節(jié)點Id
getSelectedItemId()
選中節(jié)點
_selectItem(node,e)
獲取節(jié)點的index
getIndexById(itemId)
設(shè)置鼠標(biāo)右鍵點擊事件
setOnRightClickHandler(func)
設(shè)置鼠標(biāo)點擊事件
setOnClickHandler(func)
設(shè)置節(jié)點狀態(tài)改變事件
setOnSelectStateChange(func)
設(shè)置允許動態(tài)加載xml文件(異步加載)
setXMLAutoLoading(filePath)
設(shè)置checkbox點擊事件
setOnCheckHandler(func)
設(shè)置節(jié)點展開/合攏事件
setOnOpenHandler(func)
設(shè)置節(jié)點開始展/合攏開事件
setOnOpenStartHandler(func)
設(shè)置節(jié)點展開/合攏結(jié)束事件
setOnOpenEndHandler(func)
設(shè)置節(jié)點雙擊事件
setOnDblClickHandler(func)
展開節(jié)點及下面所有子節(jié)點
_xopenAll(node)
//增加了不傳遞itemId的判斷(1494)
openAllItems(itemId)//不傳遞itemId參數(shù)則合攏根節(jié)點
根據(jù)id獲取節(jié)點
_globalIdStorageFind(itemId)
合攏節(jié)點及其下所有子節(jié)點
_xcloseAll(node)
//修改了原來邏輯的一個錯誤(1521)
closeAllItems(itemId)//不傳遞itemId參數(shù)則合攏根節(jié)點
為節(jié)點增加用戶自定義的數(shù)據(jù)
//修正一個錯誤(1548)
setUserData(itemId,name,value)
獲取用戶自定義的數(shù)據(jù)
getUserData(itemId,name)
獲取節(jié)點顏色
getItemColor(itemId)
設(shè)置節(jié)點顏色
setItemColor(itemId,defaultColor,selectedColor)
獲取節(jié)點名稱--(with HTML formatting, if any)
getItemText(itemId)
獲取父節(jié)點id
getParentId(itemId)
更改節(jié)點id
changeItemId(itemId,newItemId)
標(biāo)記被剪切的節(jié)點
doCut()
粘貼被剪切的節(jié)點到新的父節(jié)點下
doPaste(itemId)
清空被剪切的節(jié)點
clearCut()
移動節(jié)點
_moveNode(itemObject,targetObject)
允許三種狀態(tài)的復(fù)選框(全選、不選、部分選中)
enableThreeStateCheckboxes(mode)// 1 - on, 0 - off;
設(shè)置鼠標(biāo)懸浮事件
setOnMouseInHandler(func)
設(shè)置鼠標(biāo)移走事件
setOnMouseOutHandler(func)
設(shè)置是否允許顯示樹圖片
enableTreeImages=function(mode)//1 - on, 0 - off
設(shè)置是否允許固定模式(對于顯示復(fù)選框的界面美觀一些,但沒有水平滾動條)
enableFixedMode(mode)// - 1 - on, 0 - off
是否顯示復(fù)選框
enableCheckBoxes(mode, hidden)//mode 0/1 hidden 0/1
設(shè)置節(jié)點圖片
setStdImages(image1,image2,image3)//a0 - image for node without childrens a1 - image for closed node a2 - image for opened node
設(shè)置是否顯示樹線
enableTreeLines(mode)
設(shè)置圖片
setImageArrays(arrayName,image1,image2,image3,image4,image5)//image1 - line crossed image image2 - image with top line image3 - image with bottom line image4 - image without line image5 - single root image
展開當(dāng)前節(jié)點(一節(jié))
_openItem(node)
openItem(itemId)
合攏當(dāng)前節(jié)點(一節(jié))
closeItem(itemId)
獲取節(jié)點的層節(jié)數(shù)
getLevel(itemId)
設(shè)置節(jié)點是否允許被合攏
setItemCloseable(itemId,flag)//flag 0/1
對于展開節(jié)點返回子節(jié)點數(shù)量,對于未加載子節(jié)點的節(jié)點(異步加載)返回true
hasChildren(itemId)
獲取節(jié)點下的子節(jié)點數(shù)
_getLeafCount(itemNode)
設(shè)置節(jié)點名稱
setItemText(itemId,newLabel,newTooltip)
獲取節(jié)點tip
getItemTooltip(itemId)
刷新節(jié)點
refreshItem(itemId)
設(shè)置節(jié)點圖片
setItemImage2(itemId, image1,image2,image3)//image1 - node without childrens image image2 - closed node image image3 - open node image
設(shè)置節(jié)點圖片
setItemImage(itemId,image1,image2)//image1 - node without childrens image or closed node image (if image2 specified)? image2 - open node image (optional)
獲取節(jié)點下所有子節(jié)點id以逗號分割
getSubItems(itemId)
getAllSubItems(itemId)
獲取節(jié)點的所有子節(jié)點
_getAllScraggyItems(node)
獲取選中節(jié)點的名稱--(with HTML formatting, if any)
getSelectedItemText()
設(shè)置節(jié)點的選中狀態(tài)
setCheck(itemId,state)//state - checkbox state (0/1/unsure)
設(shè)置節(jié)點及所有子節(jié)點的選中狀態(tài)
setSubChecked(itemId,state)
獲取節(jié)點的選中狀態(tài) return: node state (0 - unchecked,1 - checked, 2 - third state)
isItemChecked(itemId)
刪除節(jié)點的所有子節(jié)點
deleteChildItems(itemId)
刪除節(jié)點
deleteItem(itemId,selectParent) //selectParent - If true parent of deleted item get selection, else no selected items leaving in tree.
在節(jié)點下創(chuàng)建一個節(jié)點,前三個參數(shù)是必須的
insertNewNext(itemId,newItemId,itemText,itemActionHandler,image1,image2,image3,optionStr,childs)
根據(jù)index獲取節(jié)點下子節(jié)點的id
getChildItemIdByIndex(itemId,index)//itemId 節(jié)點id
設(shè)置拖動事件
setDragHandler(func)
設(shè)置是否允許拖拽
//mode - enabled/disabled [ can be true/false/temporary_disabled - last value mean that tree can be D-n-D can be switched to true later ]
//rmode - enabled/disabled drag and drop on super root
enableDragAndDrop(mode,rmode)
設(shè)置是否允許IE緩存
preventIECashing=function(mode)//mode - enable/disable random seed ( disabled by default )
設(shè)置是否允許選中節(jié)點名稱高亮顯示
enableHighlighting(mode)//mode - 1 - on, 0 - off
是否允許圖片可點擊和拖拽(clickable and dragable)
enableActiveImages(mode)// mode - 1 - on, 0 - off
設(shè)置節(jié)點獲得焦點
focusItem(itemId)
獲取所有無子節(jié)點的節(jié)點id
getAllChildless()
getAllLeafs()
獲取所有有子節(jié)點的節(jié)點id
getAllItemsWithKids()
獲取所有被選中節(jié)點id,不包括第三中狀態(tài)的節(jié)點(部分選中的節(jié)點)
getAllChecked()
獲取所有被選中節(jié)點id,包括第三中狀態(tài)的節(jié)點(部分選中的節(jié)點)
getAllCheckedBranches()
獲取節(jié)點下所有未選中的節(jié)點id,不傳遞itemId表示從根節(jié)點開始查找
getAllUnchecked(itemId)
獲取所有部分選中的節(jié)點id(因部分子節(jié)點選中而被選中的節(jié)點)
getAllPartiallyChecked()
設(shè)置節(jié)點樣式
setItemStyle(itemId,style_string)
設(shè)置是否允許拖拽圖片
enableImageDrag(mode)
set function called when tree item draged over another item
setOnDragIn(func)
設(shè)置拖拽是是否允許自動滾動
enableDragAndDropScrolling(mode)
補(bǔ)充說明:加載樹時,必須確保所有節(jié)點的id不重復(fù),否則控件會為重復(fù)id自動生成一個隨機(jī)數(shù)(原id+"_"+當(dāng)前日期)。
增加了一個dhtmlXTreeExtend.js對原類進(jìn)行擴(kuò)展,增加了 getAllCheckedLeaf(),getAllUcCheckedLeaf()兩個函數(shù)
修改了1個bug:
1 增加沒有選中節(jié)點時執(zhí)行展開/收縮選定節(jié)點時報沒有parentId的bug
dhtmlXTreeObject.prototype.setSubChecked=function(itemId,state){
?? if(itemId)
{
? var sNode=this._globalIdStorageFind(itemId);
? this._setSubChecked(state,sNode);
? this._correctCheckStates(sNode.parentObject);
}
}
1 增加了未傳遞itemId參數(shù)時默認(rèn)從根節(jié)點展開
dhtmlXTreeObject.prototype.openAllItems=function(itemId)
?? {
????? if (itemId==window.undefined) itemId=this.rootId;
????? var temp=this._globalIdStorageFind(itemId);
????? if (!temp) return 0;
????? this._xopenAll(temp);
?? };
轉(zhuǎn)載于:https://www.cnblogs.com/rongxh7/archive/2010/06/15/1758796.html
總結(jié)
以上是生活随笔為你收集整理的dhtmlxtree api中文的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 褥园连三个字怎么取水果店名?
- 下一篇: 一款学习机最多可以添加多少个孩子的名字