Starting from dhtmlTree 1.5 new event system introduced ( while old
methods still accessible - it is strongly recommended to use new one )
| Old event system |
New event system |
| Different name for event commands |
Single command for all events |
| Only one handler per event |
Multiple handlers for event |
| Event handlers not detachable |
Detachable handlers |
Attaching event
Instead of
tree.setSomeEventHandler(func)
You can use
var eventId=tree.attachEvent(EventName,func)
Where
- EventName - name of event, please look below
- func - function name or function object
The value returned by attachEvent function can be used to detach event in future
var eventId=tree.attachEvent("onClick",func);
... some actions...
tree.detachEvent(eventId);
onRightClick
Event occured after right mouse button was clicked.
(string) ID of clicked item(object) event objectonClick
Event raised immideatly after text part of item in tree was clicked, but after default onClick functionality was processed.
ID of clicked itemID of previously selected itemonSelect
Event raised immideatly after selection in tree was changed
selected item ID ( list of IDs in case of multiselection)onCheck
Event raised immideatly after item in tree was checked/unchecked.
ID of item which will be checked/uncheckedCurrent checkbox state. 1 - item checked, 0 - item unchecked.onOpenStart
Event raised immideatly after item in tree got command to open/close , and before item was opened//closed. Event also raised for unclosable nodes and nodes without open/close functionality - in that case result of function will be ignored.
ID of node which will be opened/closedCurrent open state of tree item. 0 - item has not childs, -1 - item closed, 1 - item opened.
Returns:true - confirm opening/closing; false - deny opening/closing;onOpenEnd
Event raised immideatly after item in tree got command to open/close , and before item was opened//closed. Event also raised for unclosable nodes and nodes without open/close functionality - in that case result of function will be ignored.
ID of node which will be opened/closedCurrent open state of tree item. 0 - item has not childs, -1 - item closed, 1 - item opened.onDblClick
Event raised immideatly after item in tree was doubleclicked, before default onDblClick functionality was processed.
ID of item which was doubleclicked
Returns:true - confirm opening/closing; false - deny opening/closing;onMouseIn
Event raised immideatly after mouse hovered over item
ID of itemonMouseOut
Event raised immideatly after mouse moved out of item
ID of clicked itemonDrag
Event occured after item was dragged and droped on another item, but before item moving processed.
ID of source itemID of target itemif node droped as sibling then contain id of item before whitch source node will be insertedsource Tree objecttarget Tree object
Returns:true - confirm drag-and-drop; false - deny drag-and-drop;onDrop
[Professional]
Event raised after drag-and-drop processed. Event also raised while programmatic moving nodes.
ID of source item (ID after inserting in tree, my be not equal to initial ID)ID of target itemif node droped as sibling then contain id of item before whitch source node will be insertedsource Tree objecttarget Tree objectonXLS
[Professional]
event fired simultaneously with starting XML parsing
tree objectitem id, for which xml loadedonXLE
[Professional]
event fired simultaneously with ending XML parsing, new items already available in tree
tree objectlast parsed parent idonDragIn
[Professional]
Event raised when item draged other other dropable target
ID draged itemID potencial drop landingsource objecttarget object
Returns:true - allow drop; false - deny drop;onEdit
[Professional]
Event occurs on 4 different stages of edit process: before editing started (cancelable), after editing started, before closing (cancelable), after closed
state - 0 before editing started , 1 after editing started, 2 before closing, 3 after closedid - id of edited itemstree - tree objectvalue - for stage 0 and 2, value of editor
Returns:for stages 0 and 2; true - confirm opening/closing, false - deny opening/closing; text - edit value