Contents
- Add nodes
- Common
- CheckBox
- Drag and Drop
- Expand/Collapse nodes
- Node Editing
- Node Selection
- Template
Having trouble getting help?
Contact Support
Contact Support
Migration from Essential® JS 1
30 Jan 202524 minutes to read
This article describes the API migration process of TreeView component from Essential® JS 1 to Essential® JS 2.
Add nodes
Behavior | API in Essential® JS 1 | API in Essential® JS 2 |
---|---|---|
Add node |
Method: addNode@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) var treeObj = $("#tree").data("ejTreeView"); treeObj.addNode("Node", "#book");
|
Method: addNodes@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var treeObj = document.getElementById('tree').ej2_instances[0] var object = [{ id: "temp", name: "New node" }, { id: "new", name: "New node 1" }]; treeObj.addNodes(object, "book");
|
Triggers before adding node |
Event: BeforeAdd@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.BeforeAdd("beforeAdd"))) Script function beforeAdd() {}
|
Not Applicable |
Adding node after a particular node |
Method: insertAfter@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.insertAfter("node", "book");
|
Can be achieved using@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() var object = [{ id: "1", name: "node" }]; var treeObj = document.getElementById('tree').ej2_instances[0] var child = treeObj.element.querySelector('[data-uid="book"]'); var parent = child.parentElement.closest('.e-list-item'); var level = parseInt(parent.getAttribute('aria-level'))+1; var childNodes = Array.from(parent.querySelectorAll('.e-list-item.e-level-'+level)) var index = childNodes.indexOf(child) treeObj.addNodes(object, "book", index+1);
|
Adding node before a particular node |
Method: insertBefore@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.insertBefore("node", "book");
|
Can be achieved using@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() var object = [{ id: "1", name: "node" }]; var treeObj = document.getElementById('tree').ej2_instances[0] var child = treeObj.element.querySelector('[data-uid="book"]'); var parent = child.parentElement.closest('.e-list-item'); var level = parseInt(parent.getAttribute('aria-level'))+1; var childNodes = Array.from(parent.querySelectorAll('.e-list-item.e-level-'+level)) var index = childNodes.indexOf(child) treeObj.addNodes(object, "book", index-1);
|
Triggers when node is added successfully |
Event: NodeAdd@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.NodeAdd("nodeAdd"))) Script function nodeAdd() {}
|
Event: DataSourceChanged@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).DataSourceChanged("DataSourceChanged").Render() Script function DataSourceChanged(args){}
|
Common
Behavior | API in Essential® JS 1 | API in Essential® JS 2 |
---|---|---|
Keyboard Navigation |
Property: AllowKeyboardNavigation@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).AllowKeyboardNavigation(false))
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.TemplateFields).KeyPress("onKeyPress").Render() Script function onKeyPress(args){ args.cancel = true }
|
Triggers before node is cut |
Event: BeforeCut@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.BeforeCut("beforeCut"))) function beforeCut() {}
|
Not Applicable |
Triggers before node is deleted |
Event: BeforeDelete@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.BeforeDelete("beforeDelete"))) function beforeDelete() {}
|
Not Applicable |
Triggers before loading nodes |
Event: BeforeLoad@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.BeforeLoad("beforeLoad"))) function beforeLoad() {}
|
Not Applicable |
Triggers before node is pasted |
Event: BeforePaste@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.BeforePaste("beforePaste"))) function beforePaste() {}
|
Not Applicable |
Triggers when TreeView is created |
Event: Create@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.Create("create"))) function create() {}
|
Event: Created@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Created("onCreated").Render() Script function onCreated(args){}
|
Css class |
Property: CssClass@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).CssClass("custom"))
|
Property: CssClass@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).CssClass("custom").Render()
|
Triggers when TreeView is destroyed |
Event: Destroy@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.Destroy("destroy"))) function destroy() {}
|
Event: Destroyed@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Destroyed("onDestroy").Render() Script function onDestroy(args){}
|
Destroy TreeView control |
Method: destroy@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.destroy();
|
Method: destroy@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var treeObj = document.getElementById('tree').ej2_instances[0] treeObj.destroy();
|
Disable Node |
Method: disableNode @Html.EJ().TreeView(“tree”).TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.disableNode($("#1"));
|
Method: disableNodes@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var treeObj = document.getElementById('tree').ej2_instances[0] treeObj.disableNodes(["1", "2"]);
|
Enable Animation |
Property: EnableAnimation@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).EnableAnimation(false))
|
Property: Animation@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Animation(ViewBag.TreeViewNodeAnimation).Render() Controller TreeViewNodeAnimationSettings Animation = new TreeViewNodeAnimationSettings(); List<Object> expand = new List<object>(); expand.Add(new{ duration = 0 }); Animation.Expand = expand[0]; List<Object> collapse = new List<object>(); collapse.Add(new{ duration = 0 }); Animation.Collapse = collapse[0]; ViewBag.TreeViewNodeAnimation = Animation;
|
Control state |
Property: Enabled@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).Enabled(false))
|
Not Applicable |
Enable Node |
Method: enableNode@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text"))) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.enableNode($("#1"));
|
Method: enableNodes@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var treeObj = document.getElementById('tree').ej2_instances[0] treeObj.enableNodes(["1"]);
|
Persistence |
Property: EnablePersistence@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).EnablePersistence(true))
|
Property: EnablePersistence@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).EnablePersistence(true).Render()
|
Right to Left |
Property: EnableRTL@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).EnableRTL(true))
|
Property: EnableRtl@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).EnableRtl(true).Render()
|
Ensure visibility |
Method: ensureVisible@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.ensureVisible($("#1"));
|
Method: ensureVisible@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var treeObj = document.getElementById('tree').ej2_instances[0] treeObj.ensureVisible("1");
|
Mapping fields |
Property: TreeViewFields@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).Child("Child").HasChild("HasChild") .Expanded("Expanded").HtmlAttribute("HtmlAttributes")ImageAttribute("img").ImageUrl("ImageUrl").IsChecked("Checked") .LinkAttribute("LinkAttribute").Query(null).Selected("Selected").SpriteCssClass("custom").TableName(null))
|
Property: Fields@Html.EJS().TreeView("tree").Fields(ViewBag.Fields) Controller TreeViewFieldsSettings TemplateFields = new TreeViewFieldsSettings(); TreeViewTemplate template = new TreeViewTemplate(); TemplateFields.DataSource = template.getTreeViewTemplate(); TemplateFields.IsChecked = "checked" TemplateFields.Id = "id"; TemplateFields.Text = "name"; TemplateFields.ParentID = "pid"; TemplateFields.HasChildren = "HasChild"; TemplateFields.Expanded = "Expanded"; TemplateFields.Selected = "Selected"; ViewBag.TemplateFields = TemplateFields;
|
Get child nodes |
Method: getChildren@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.getChildren("1");
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields) Script var instance= document.getElementById("tree").ej2_instances[0]; var parent = instance.element.querySelector('[data-uid="1"]') console.log(parent.querySelector('.e-list-item'))
|
Get node |
Method: getNode@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.getNode($("#1"));
|
Method: getNode@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var treeObj = document.getElementById('tree').ej2_instances[0] treeObj.getNode("1");
|
Get node by index |
Method: getNodeByIndex@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.getNodeByIndex(3);
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; var nodes=instance.element.querySelectorAll('.e-list-item') console.log(nodes[3]);
|
Get node count |
Method: getNodeCount@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.getNodeCount();
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; var nodes = instance.element.querySelectorAll('.e-list-item') console.log("Node count is " + nodes.length);
|
Get node index |
Method: getNodeIndex@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.getNodeIndex($("#book"));
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; var nodes=instance.element.querySelectorAll('.e-list-item') var node = instance.element.querySelector('[data-uid="' + "book" + '"]');; while(i<nodes.length) { if(nodes[i] === node) {console.log("Node index is "+i) break; } i++ }
|
Get parent of node |
Method: getParent@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.getParent($("#book"));
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; var child=instance.element.querySelector('[data-uid="' + "book" + '"]'); var parent = child.parentNode.closest('.e-list-item') console.log(parent)
|
Get tree node text |
Method: getText@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.getText("1");
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; var nodeText=instance.getNode("1")['text']
|
Get updated datasource |
Method: getTreeData@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.getTreeData();
|
Method: getTreeData@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var treeObj = document.getElementById('tree').ej2_instances[0] treeObj.getTreeData();
|
Get visible nodes |
Method: getVisibleNodes@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.getVisibleNodes();
|
Not Applicable |
Height of TreeView control |
Property: Height@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).Height("400px")
|
Can be achieved using, @Html.EJS().TreeView("tree").Fields(ViewBag.Fields).CssClass("custom").Render() Css .e-treeview.custom{ height: 400px; }
|
Checking for child nodes |
Method: hasChildNode@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.hasChildNode("book");
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; var parent=instance.element.querySelector('[data-uid="book"]') if (parent.querySelector('.e-list-item') !== null) { console.log("Has child node") }
|
Hide all nodes |
Method: hide@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.hide();
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; instance.element.querySelector('.e-list-parent').style.display="none"
|
Hide node |
Method: hideNode@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.hideNode("book");
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; instance.element.querySelector('[data-uid="book"]').style.display="none"
|
HTML Attributes |
Property: HtmlAttributes@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).HtmlAttributes(htmlAttr) Script @{ Dictionary<string, object> htmlAttr = new Dictionary<string, object>(); htmlAttr.Add("name", "treeView"); }
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var element= document.getElementById("tree"); element.classList.add("htmlAttr")
|
To check if child nodes are loaded |
Method: isChildLoaded@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.isChildLoaded("book");
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; var parent=instance.element.querySelector('[data-uid="book"]') if (parent.querySelector('.e-list-item') !== null) { console.log("Child is loaded") }
|
To check if node is disabled |
Method: isDisabled@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.isDisabled("book");
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; var node=instance.element.querySelector('[data-uid="book"]') if (node.classList.contains('e-disable') === true) { console.log("Node is disabled") }
|
To check if node exists in TreeView |
Method: isExist@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.isExist("book");
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; if (instance.getNode('book')['text']) !== "") { console.log("Node exists") }
|
To check if node is visible |
Method: isVisible@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.isVisible("book");
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; if (instance.element.querySelector('[data-uid="book"]').style.display !== "none"){ console.log("Node is visible") }
|
Triggers on key press |
Event: KeyPress@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.KeyPress("keyPress")) function keyPress() {}
|
Event: KeyPress@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).KeyPress("onKeyPress").Render() Script function onKeyPress(){}
|
Load TreeView nodes from particular URl |
Method: loadData@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.loadData("childData", "book");
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; TreeViewFieldsSettings data= new TreeViewFieldsSettings(); object dataManager = new DataManager { Url = "/FileContent/rootNode", Adaptor = "UrlAdaptor", CrossDomain = true}; dataManager.executeQuery(new ej.data.Query().take(8).then((e) => { var childData = e.result; instance.addNodes(childData, "book") }));
|
Triggers when data load fails |
Event: LoadError@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.LoadError("loadError")) function loadError() {}
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; TreeViewFieldsSettings data= new TreeViewFieldsSettings(); object dataManager = new DataManager { Url = "/FileContent/rootNode", Adaptor = "UrlAdaptor", CrossDomain = true}; dataManager.executeQuery(new ej.data.Query().take(8).error((e) => { console.log('Data loaded failed') }));
|
Load on demand |
Property: LoadOnDemand@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).LoadOnDemand(true)
|
Property: LoadOnDemand@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).LoadOnDemand(true).Render() TreeView is rendered in load on demand by default
|
Triggers when data load is success |
Event: LoadSuccess@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.LoadSuccess("loadSuccess")) function loadSuccess() {} var treeObj = document.getElementById('tree').ej2_instances[0] treeObj.loadData("childData", "book");
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; TreeViewFieldsSettings data= new TreeViewFieldsSettings(); object dataManager = new DataManager { Url = "/FileContent/rootNode", Adaptor = "UrlAdaptor", CrossDomain = true}; dataManager.executeQuery(new ej.data.Query().take(8).then((e) => { console.log('Data loaded successfully') }));
|
To move node |
Method: moveNode@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text"))) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.moveNode("book", "art");
|
Method: moveNodes@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var treeObj = document.getElementById('tree').ej2_instances[0] treeObj.moveNodes("book", "art");
|
Triggers when node is clicked successfully |
Event: NodeClick@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.NodeClick("nodeClick")) function nodeClick() {}
|
Event: NodeClicked@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).NodeClicked("onNodeClick").Render() Script function onNodeClick(){}
|
Triggers when node is cut successfully |
Event: NodeCut@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.NodeCut("nodeCut")) function nodeCut() {}
|
Not Applicable |
Triggers when node is deleted successfully |
Event: NodeDelete@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.NodeDelete("nodeDelete")) function nodeDelete() {}
|
Event: DataSourceChanged@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).DataSourceChanged("DataSourceChanged").Render() Script function DataSourceChanged(args){}
|
Triggers when node is pasted successfully |
Event: NodePaste@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.NodePaste("nodePaste")) function nodePaste() {}
|
Not Applicable |
Triggers when nodes are loaded successfully |
Event: Ready@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.Ready("onReady")) function onReady() {}
|
Event: DataBound@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).DataBound("onDataBound").Render() Script function onDataBound(){}
|
Refresh TreeView control |
Method: refresh@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text"))) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.refresh();
|
Not Applicable |
To show all nodes |
Method: show@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text"))) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.show();
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; instance.element.querySelector('.e-list-parent').style.display="block"
|
Show node |
Method: showNode@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text"))) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.showNode("book");
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; instance.element.querySelector('[data-uid="book"]').style.display="block"
|
Remove all TreeView nodes |
Method: removeAll@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView");<br />treeObj.removeAll();
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; instance.removeNodes([instance.element.querySelector('.e-list-parent')])
|
Remove Treeview node |
Method: removeNode@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.removeNode("book");
|
Method: removeNodes@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var treeObj = document.getElementById('tree').ej2_instances[0] treeObj.removeNodes("book");
|
Sort order |
Property: SortSettings@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).SortSettings(s => s.AllowSorting(true).SortOrder(SortOrder.Descending))
|
Property: SortOrder@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).SortOrder(SortOrder.Descending).Render()
|
Update node text |
Method: updateText@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.updateText("book", "text");
|
Method: updateNode@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var treeObj = document.getElementById('tree').ej2_instances[0] treeObj.updateNode("book", "text");
|
Width of Treeview control |
Property: Width@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).Width("300px")
|
Can be achieved using, @Html.EJS().TreeView("tree").Fields(ViewBag.Fields).CssClass("custom").Render() Css .e-treeview.custom{ width: 300px; }
|
CheckBox
Behavior | API in Essential® JS 1 | API in Essential® JS 2 |
---|---|---|
Prevent auto-check of child and parent |
Property: AutoCheck@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).ShowCheckbox(true).AutoCheck(false)
|
Property: AutoCheck@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).AutoCheck(false).ShowCheckBox(true).Render()
|
Prevent indeterminate state in parent node |
Property: AutoCheckParentNode@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).ShowCheckbox(true).AutoCheckParentNode(true)
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).ShowCheckBox(true).AutoCheck(false).NodeChecked("nodeChecked").Render() Script var treeObj= document.getElementById("tree").ej2_instances[0]; function nodeChecked(args){ var child = treeObj.element.querySelector('[data-uid="' + args.data[0]['id'] + '"]'); var checkNodes = []; var element = child.parentNode; while ((element !== null || element !== undefined) && !element.parentNode.classList.contains('e-treeview')) { element = element.parentNode; var id = element.getAttribute('data-uid'); if (id !== null) checkNodes.push(element.getAttribute('data-uid')) } if (child.querySelector('.e-list-item') !== null && args.isInteracted === true && args.action === 'check') { treeObj.autoCheck = true; treeObj.checkAll(child.getAttribute('data-uid')); } else if (child.querySelector('.e-list-item') !== null && args.isInteracted === true && args.action === 'uncheck') { treeObj.autoCheck = true; treeObj.uncheckAll(child.getAttribute('data-uid')); } treeObj.autoCheck = false; if (args.action === 'check') { treeObj.checkAll(checkNodes) } else if (args.action === 'uncheck' && child.parentNode.querySelector('.e-check') === null) { treeObj.uncheckAll(checkNodes) } }
|
Check all nodes |
Method: checkAll@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text"))).ShowCheckbox(true) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.checkAll();
|
Method: checkAll@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).ShowCheckBox(true).Render() Script var treeObj = document.getElementById('tree').ej2_instances[0] treeObj.checkAll();
|
Check node |
Method: checkNode@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text"))).ShowCheckbox(true) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.checkNode("book");
|
Method: checkAll@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).ShowCheckBox(true).Render() Script var treeObj = document.getElementById('tree').ej2_instances[0] treeObj.checkAll("book");
|
Set checkednodes |
Property: CheckedNodesList<int> checkedNodes = new List<int>(); checkedNodes.Add(2); checkedNodes.Add(8); checkedNodes.Add(12); @Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).ShowCheckbox(true).CheckedNodes(ViewBag.checkednodes)
|
Property: CheckedNodes@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).ShowCheckBox(true).CheckedNodes(ViewBag.CheckedNodes).Render() Controller ViewBag.CheckedNodes = new string[] { "3", "9", "13" };
|
Get checked nodes |
Method: getCheckedNodes@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text"))).ShowCheckbox(true) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.getCheckedNodes();
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).ShowCheckBox(true).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; var check=instance.getAllCheckedNodes(); var i=0; var checkedNodes; while(i<check.length) { checkedNodes.push(instance.element.querySelector('[data-uid="' + checkedNodes[i] + '"]')); i++ } console.log(checkedNodes)
|
Get checked nodes index |
Method: getCheckedNodesIndex@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text"))).ShowCheckbox(true) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.getCheckedNodesIndex();
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).ShowCheckBox(true).CheckedNodes("1").Render() Script var instance= document.getElementById("tree").ej2_instances[0]; var nodes = instance.element.querySelectorAll('.e-list-item')<br />var nodeIndex[];<br />while(i<nodes.length) {<br />if(nodes[i].classList.contains('e-check')) {nodeIndex.push(i); } i++ } console.log(nodeIndex)
|
To check if nodes are checked |
Method: isNodeChecked@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text"))).ShowCheckbox(true) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.isNodeChecked("book");
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).ShowCheckBox(true).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; var checked=instance.getNode("book")['isChecked'] if (checked === true) { console.log("Node is checked") }
|
Triggers when node is checked successfully |
Event: NodeCheck@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).ShowCheckbox(true) .ClientSideEvents(events =>events.NodeCheck("nodeCheck")) function nodeCheck() {}
|
Event: nodeChecked@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).ShowCheckBox(true).NodeChecked("nodeChecked").Render() Script function nodeChecked(args){ if (args.action == "check") {} }
|
Checkbox support |
Property: ShowCheckbox@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).ShowCheckbox(true).ShowCheckbox(true)
|
Property: ShowCheckBox@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).ShowCheckBox(true)
|
To uncheck all nodes |
Method: unCheckAll@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text"))).ShowCheckbox(true) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.unCheckAll();
|
Method: uncheckAll@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).ShowCheckBox(true).Render() Script var treeObj = document.getElementById('tree').ej2_instances[0] treeObj.uncheckAll();
|
To uncheck node |
Method: uncheckNode@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text"))).ShowCheckbox(true) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.uncheckNode("book");
|
Method: uncheckAll@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).ShowCheckBox(true).Render() Script var treeObj = document.getElementById('tree').ej2_instances[0] treeObj.uncheckAll("book");
|
Triggers when node is unchecked successfully |
Event: NodeUncheck@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).ShowCheckbox(true) .ClientSideEvents(events =>events.NodeUncheck("nodeUncheck")) function nodeUncheck() {}
|
Event: nodeChecked@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).ShowCheckBox(true).NodeChecked("nodeChecked").Render() Script function nodeChecked(args){ if (args.action == "un-check") {} }
|
Triggers before nodes are checked/ unchecked | Not Applicable |
Event: NodeChecking@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).ShowCheckBox(true).NodeChecking("nodeChecking").Render() Script function nodeChecking(args){ if (args.action == "check") {} }
|
Drag and Drop
Behavior | API in Essential® JS 1 | API in Essential® JS 2 |
---|---|---|
Drag and drop |
Property: AllowDragAndDrop@Html.EJ().TreeView("tree").TreeViewFields(field =><br />field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).AllowDragAndDrop(true)
|
Property: AllowDragAndDrop@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).AllowDragAndDrop(true)
|
Prevent Drag and drop to another Treeview |
Property: AllowDragAndDropAcrossControl@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).AllowDragAndDrop(true).AllowDragAndDropAcrossControl(false)
|
Can be achieved using, @Html.EJS().TreeView("tree").Fields(ViewBag.Fields).AllowDragAndDrop(true).NodeDragStop("dragStop").Render() Script function dragStop(args){ if (args.draggedParentNode.closest('.e-treeview') !== args.dropTarget.closest('.e-treeview')) { args.cancel = true; } }
|
Prevent sibling drop |
Property: AllowDropSibling@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).AllowDragAndDrop(true).AllowDropSibling(false)
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).AllowDragAndDrop(true).NodeDragStop("dragStop").Render() Script function dragStop(args){ if(args.dropIndicator === "e-drop-next") { args.cancel = true; } }
|
Prevent child drop |
Property: AllowDropChild@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).AllowDragAndDrop(true).AllowDropChild(false)
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).AllowDragAndDrop(true).NodeDragStop("dragStop").Render() Script function dragStop(args){ if(args.dropIndicator === "e-drop-in") { args.cancel = true; } }
|
Triggers when node is dragged |
Event: NodeDrag@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).AllowDragAndDrop(true) .ClientSideEvents(events =>events.NodeDrag("nodeDrag")) function nodeDrag() {}
|
Event: NodeDragging@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).AllowDragAndDrop(true).NodeDragging("nodeDrag").Render() Script function nodeDrag(){}
|
Triggers when node drag is started successfully |
Event: NodeDragStart@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).AllowDragAndDrop(true) .ClientSideEvents(events =>events.NodeDragStart("nodeDragStart")) function nodeDragStart() {}
|
Event: NodeDragStart@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).AllowDragAndDrop(true).NodeDragStart("nodeDragStart").Render() Script function nodeDragStart(){}
|
Triggers before dragged node drag is stopped |
Event: NodeDragStop@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).AllowDragAndDrop(true) .ClientSideEvents(events =>events.NodeDragStop("nodeDragStop")) function nodeDragStop() {}
|
Event: NodeDragStop@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).AllowDragAndDrop(true).NodeDragStop("nodeDragStop").Render() Script function nodeDragStop(){}
|
Triggers when node is dropped successfully |
Event: NodeDropped@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).AllowDragAndDrop(true) .ClientSideEvents(events =>events.NodeDropped("nodeDropped")) function nodeDropped() {}
|
Event: NodeDropped@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).AllowDragAndDrop(true).NodeDropped("nodeDropped").Render() Script function nodeDropped(){}
|
Expand/Collapse nodes
Behavior | API in Essential® JS 1 | API in Essential® JS 2 |
---|---|---|
Triggers before node is collapsed |
Event: BeforeCollapse@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.BeforeCollapse("beforeCollapse")) function beforeCollapse() {}
|
Event: NodeCollapsing@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).NodeCollapsing("nodeCollapsing").Render() Script function nodeCollapsing(){}
|
Triggers before node is expanded |
Event: BeforeExpand@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.BeforeExpand("beforeExpand")) function beforeExpand() {}
|
Event: NodeExpanding@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).NodeExpanding("nodeExpanding").Render() Script function nodeExpanding(){}
|
Collapse all nodes |
Method: collapseAll@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.collapseAll();
|
Method: collapseAll@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var treeObj = document.getElementById('tree').ej2_instances[0] treeObj.collapseAll();
|
Collapse Node |
Method: collapseNode@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.collapseNode("book");
|
Method: collapseAll@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var treeObj = document.getElementById('tree').ej2_instances[0] treeObj.collapseAll("book");
|
Prevent multiple nodes expand |
Property: EnableMultipleExpand@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).EnableMultipleExpand(false)
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).NodeExpanding("nodeExpanding").Render() Script function nodeExpanding(args){ var parent=args.node.parentNode.closest('.e-list-item'); if (parent === null) parent=args.node.parentNode.closest('.e-treeview'); var children=parent.querySelectorAll('.e-list-item'); var i=0; var nodes=[]; while(i<children.length){ nodes.push(children[i].getAttribute("data-uid")); i++;} this.collapseAll(nodes) }
|
Expand all Nodes |
Method: expandAll@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.expandAll();
|
Method: expandAll@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var treeObj = document.getElementById('tree').ej2_instances[0] treeObj.expandAll();
|
Expand Node |
Method: expandNode@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.expandNode("1");
|
Method: expandAll@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var treeObj = document.getElementById('tree').ej2_instances[0] treeObj.expandAll("1");
|
Gets/Sets Expanded nodes |
Property: ExpandedNodesList<int> ExpandedNodes = new List<int>(); ExpandedNodes.Add(1); ExpandedNodes.Add(2); @Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).ExpandedNodes(ViewBag.ExpandedNodes)
|
Property: ExpandedNodes@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).ExpandedNodes("1").Render()
|
Expand action |
Property: ExpandOn@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).ExpandOn("click")
|
Property: ExpandOn@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).ExpandOn(ExpandOnSettings.Click).Render()
|
Get expanded nodes |
Method: getExpandedNodes@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.getExpandedNodes();
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; var expand=instance.expandedNodes; var i=0; var expandedNodes; while(i<expand.length) { expandedNodes.push(instance.element.querySelector('[data-uid="' + expandednodes[i] + '"]')); i++ } console.log(expandedNodes)
|
Get expanded nodes index |
Method: getExpandedNodesIndex@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.getExpandedNodesIndex();
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; var nodes=instance.element.querySelectorAll('.e-list-item') var nodeIndex; var i = 0; while(i<nodes.length) { if(nodes[i].classList.contains('e-icon-collapsible')) {nodeIndex.push(i); } i++ } console.log(nodeIndex)
|
To check if node is expanded |
Method: isExpanded@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.isExpanded("book");
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; if(instance.expandedNodes.indexOf("book") !== -1) { console.log("Node is expanded") }
|
Triggers when node is collapsed successfully |
Event: NodeCollapse@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.NodeCollapse("nodeCollapse")) function nodeCollapse() {}
|
Event: NodeCollapsed@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).NodeCollapsed("nodeCollapsed").Render() Script function nodeCollapsed(){}
|
Triggers when node is expanded successfully |
Event: NodeExpand@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.NodeExpand("nodeExpand")) function nodeExpand() {}
|
Event: NodeExpanded@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).NodeExpanded("nodeExpanded").Render() Script function nodeExpanded(){}
|
Node Editing
Behavior | API in Essential® JS 1 | API in Essential® JS 2 |
---|---|---|
Editing |
Property: AllowEditing@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).AllowEditing(true)
|
Property: AllowEditing@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).AllowEditing(true).Render()
|
Triggers before node is edited |
Event: BeforeEdit@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.BeforeEdit("beforeEdit")) function beforeEdit() {}
|
Event: NodeEditing@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).NodeEditing("nodeEditing").Render() Script function nodeEditing(){}
|
To Enable editing programatically | Not Applicable |
Method: beginEdit@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var treeObj = document.getElementById('tree').ej2_instances[0] treeObj.beginEdit("1");
|
Triggers before node edit is successful |
Event: InlineEditValidation@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.InlineEditValidation("inlineEditValidation")) function inlineEditValidation() {}
|
Event: NodeEdited@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).NodeEdited("nodeEdited").Render() Script function nodeEdited(){}
|
Triggers when node is edited successfully |
Event: NodeEdit@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.NodeEdit("nodeEdit")) function nodeEdit() {}
|
Event: DataSourceChanged@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).DataSourceChanged("DataSourceChanged").Render() Script function DataSourceChanged(args){}
|
Node Selection
Behavior | API in Essential® JS 1 | API in Essential® JS 2 |
---|---|---|
Multi-selection |
Property: AllowMultiSelection@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).AllowMultiSelection(true)
|
Property: AllowMultiSelection@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).AllowMultiSelection(true).Render()
|
Triggers before node is selected |
Event: BeforeSelect@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.BeforeSelect("beforeSelect")) function beforeSelect() {}
|
Event: NodeSelecting@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).NodeSelecting("nodeSelecting").Render() Script function nodeSelecting(){}
|
Fullrowselection |
Property: FullRowSelect@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).FullRowSelect(true)
|
Property: FullRowSelect@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).FullRowSelect(true).Render()
|
Get selected node |
Method: getSelectedNode@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.getSelectedNode();
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; var select=instance.selectedNodes; var selectedNode; selectedNode.push(instance.element.querySelector('[data-uid="' + selectedNode[i] + '"]')); console.log(selectedNode)
|
Get selected node index |
Method: getSelectedNodeIndex@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.getSelectedNodeIndex();
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; var nodes=instance.element.querySelectorAll('.e-list-item') var nodeIndex; var i=0; while(i<nodes.length) { if(nodes[i].classList.contains('e-active')) {nodeIndex = i; break; } i++ } console.log(nodeIndex)
|
Get selected nodes |
Method: getSelectedNodes@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).AllowMultiSelection(true)) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.getSelectedNodes();
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).AllowMultiSelection(true).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; var select=instance.selectedNodes; var i=0; var selectedNodes; while(i<select.length) { selectedNodes.push(instance.element.querySelector('[data-uid="' + selectedNodes[i] + '"]')); i++ } console.log(selectedNodes)
|
Get selected nodes index |
Method: getSelectedNodesIndex@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).AllowMultiSelection(true)) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.getSelectedNodesIndex();
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).AllowMultiSelection(true).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; var nodes=instance.element.querySelectorAll('.e-list-item') var nodeIndex; var i = 0; while(i<nodes.length) { if(nodes[i].classList.contains('e-active')) {nodeIndex.push(i); } i++ } console.log(nodeIndex)
|
To check if node is selected |
Method: isSelected@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.isSelected("book");
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; if (instance.selectedNodes.indexOf("book") !== -1) { console.log("Node is selected") }
|
Triggers when node is selected successfully |
Event: NodeSelect@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.NodeSelect("nodeSelect")) function nodeSelect() {}
|
Event: NodeSelected@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).NodeSelected("nodeSelected").Render() Script function nodeSelected(){ if (args.action =="select") {} }
|
Select all nodes |
Method: selectAll@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).AllowMultiSelection(true)) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.selectAll();
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).AllowMultiSelection(true).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; var nodes = instance.element.querySelectorAll('.e-list-item') var selectednodes; for(int i = 0; i < nodes.length; i++) { selectednodes.push(nodes[i].getAttribute('data-uid'))} instance.selectedNodes = selectednodes;
|
Gets/Sets selected node |
Property: SelectedNodeList<int> SelectedNode = new List<int>(); SelectedNode.Add(1); @Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).SelectedNode(ViewBag.SelectedNode)
|
Property: SelectedNodes@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).SelectedNodes("1").Render()
|
Select node |
Method: selectNode@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.selectNode("book");
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; instance.selectedNodes=["book"]
|
Gets/Sets selected nodes |
Property: SelectedNodesList<int> SelectedNode = new List<int>(); SelectedNode.Add(1); SelectedNode.Add(2); @Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).SelectedNodes(ViewBag.SelectedNode))
|
Property: SelectedNodes@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).AllowMultiSelection(true).SelectedNodes(["1","2"]).Render();
|
Triggers when node is unselected successfully |
Event: NodeUnselect@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")) .ClientSideEvents(events =>events.NodeUnselect("nodeUnselect")) function nodeUnselect() {}
|
Event: NodeSelected@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).NodeSelected("nodeSelected").Render() Script function nodeSelected(){ if (args.action =="un-select") {} }
|
To unselect all nodes |
Method: unselectAll@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).AllowMultiSelection(true)) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.unselectAll();
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).AllowMultiSelection(true).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; instance.selectedNodes=[];
|
To unselect node |
Method: unselectNode@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).AllowMultiSelection(true)) Script var treeObj = $("#tree").data("ejTreeView"); treeObj.unselectNode("book");
|
Can be achieved using,@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).AllowMultiSelection(true).Render() Script var instance= document.getElementById("tree").ej2_instances[0]; instance.selectedNodes.pop(book)
|
Template
Behavior | API in Essential® JS 1 | API in Essential® JS 2 |
---|---|---|
Custom template |
Property: Template@Html.EJ().TreeView("tree").TreeViewFields(field => field.Datasource((IEnumerable<LoadData>)ViewBag.datasource) .Id("Id").ParentId("Parent").Text("Text")).Template("templateData")
|
Property: NodeTemplate@Html.EJS().TreeView("tree").Fields(ViewBag.Fields).NodeTemplate("templateData").Render()
|