JavaScript Tree

JavaScript Accordion

You can use dhtmlxTree as an individual component or as a part of dhtmlxSuite

Product Features

  • Cross-browser compatibility (IE, Chrome, FF, Opera, Safari)
  • Loading from XML, JavaScript, JSON, CSV
  • Editable items (in-line editing)
  • Server-side integration with dhtmlxConnector
  • Keyboard navigation
  • Multi-selection
  • Context menu
  • Advanced drag-and-drop capabilities
  • Drag-and-drop to/from dhtmlxGrid
  • Right-to-left languages support (RTL)
  • Full controll with JavaScript API
  • Dynamic loading for large trees
  • Smart XML Parsing for large trees
  • Smart Rendering for extra-large trees
  • Serialization to XML
  • Checkboxes (two/three states, disabled/hidden), radio buttons
  • Customizable appearance
  • Unlimited user-data for nodes

Live Demo

Ajax-based hierarchical JavaScript tree in your app
dhtmlxTree is a feature-rich JavaScript tree menu that allows you to quickly add a nice-looking, Ajax-based hierarchical tree structure on a web page. The JavaScript Tree supports in-line node editing, advanced drag-and-drop, three-state checkboxes, and more.
Powerful drag-and-drop
Drag-and-drop capabilities allow you to drag the JavaScript tree control items not just within one tree, but between different trees (even if they are located in different frames or iframes).
Complete API control
Rich client-side API provides complete control over the JavaScript tree appearance and behavior. In addition to the functional API, dhtmlxTree also provides an object constructor that allows you to define object properties within a single command.
Ajax model of data processing
This JavaScript Tree uses the Ajax model of data processing, so the tree content can be updated seamlessly without reloading the entire webpage. All changes performed in the tree structure on the client side can be saved to the database automatically in real time.
Server-Side Integration
To simplify server-side integration, we've developed the dhtmlxConnector library that provides client-server data communication (available for PHP, Java, ASP.NET, and ColdFusion). You can also use dhtmlxTree with the custom server-side code.
Smart Rendering and Distributed Parsing
Once built into your web site or application, dhtmlxTree provides a high-performance navigation system. Smart Rendering brings excellent performance for trees with a great number of nodes per level. With Distributed Parsing, tree levels are loaded asynchronously: when the node is open, only the first portion of sub-nodes is displayed, then other nodes are dynamically processed and displayed by the same portions on demand.

Editions and Licenses

Standard GNU GPL v2
Free under GPL
  • Use in unlimited projects
  • Forum support
  • Minor and Major updates
Professional Commercial license
up to 5 developers
  • Use in one project
  • Standard ticket support
  • 1 month of updates (minor, major, bugfixes)
Favorable terms
for companies
Professional Enterprise license
per company
  • Use in unlimited projects
  • Premium ticket support
  • 12 months of updates (minor, major, bugfixes)

Demo Apps & Learning Resources

Technical samples

All JavaScript Tree features are accompanied by an online sample

Ticket support

Create a support request and get fast and qualified help from our support/development team.


Our detailed documentation can learn how to use JavaScript Tree and effectively implement it in your own applications. It provides the detailed information regarding each aspect of the widget.

Community forum

If you don't have an active support subscription, you are welcome to post your technical questions to our forum. It's moderated by our official support team.

Need help with dhtmlxTree integration into your app? Contact us