We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. Image for the cookie policy date
Unfortunately, activation email could not send to your email. Please try again.
Syncfusion Feedback

Trusted by the world’s leading companies

Syncfusion Trusted Companies

Overview

The JavaScript Tree Grid is a feature-rich control used to visualize self-referential hierarchical (or tree-like structure) data effectively in a tabular format. Its rich feature set includes many functionalities like data binding, editing, sorting, filtering, paging, exporting to Excel, CSV, and PDF formats, aggregating rows, and more.


Data binding

Bind data seamlessly with various local and remote data sources such as JSON, RESTful services, OData services, and WCF services. JavaScript Tree Grid control uses the data manager to handle data and supports customizing data requests and processing.

JavaScript Tree Grid Data binding.


Mobile optimized with browser support

Touch support in JavaScript Tree Grid.

Touch support

All Tree Grid features work on touch devices with zero configuration. Without customization, the JS Tree Grid control allows enabling features such as sorting, paging, and selection.

Responsive in JavaScript Tree Grid.

Responsive

The Tree Grid in JavaScript can be viewed on various devices. It is also possible to hide specific columns for particular screen sizes using column-based media query support.

Responsive pager UI in JavaScript TreeGrid.

Responsive pager

The pager UI is adaptable to mobile views. When a Tree Grid is rendered in a smaller screen, the pager UI will be rendered without a page number list, making it suitable for smaller devices.

Cross browser support in JavaScript TreeGrid.

Cross-browser support

The JavaScript TreeGrid works well with all modern web browsers such as Chrome, Firefox, Edge, Safari, and IE11. It supports IE11 with the help of polyfills.


High performance

The JavaScript Tree Grid has optimized design for high-performance. It loads millions of records in just a second without any performance degradation with the help of row and column virtualization. In this TreeGrid, you can load the child records of a collapsed parent record on demand with expander click action.

JavaScript Tree Grid High Performance


JavaScript TreeGrid Editing.

Editing

The JavaScript TreeGrid provides full support to create, read, update, and delete operations (CRUD). It performs editing operations with JSON collection or remote data service with the help of data manager.


Aggregation

Easily visualize the aggregates of the JavaScript TreeGrid column values using the summary option. Aggregates can be customized to show their value in every hierarchy with a set of predefined summary types.

JavaScript TreeGrid Aggregation.


JavaScript Tree Grid Paging.

Paging

Through paging, a segment of data can be viewed from the assigned data source. The JavaScript Tree Grid offers built-in pager UI with options to customize its entire UI. It also has an on-demand paging mode for effective data retrieval from remote web services.


Filtering

Filtering allows users to view the required data in the JavaScript TreeGrid. It supports various filter types such as filter bar and menu. The appropriate filter type can be chosen based on the application. These filter types support number, string, date, and Boolean. Options to customize filter operators, case sensitivity, and diacritics are also available.

JavaScript Tree Grid Filtering.


Sorting

The JavaScript Tree Grid allows users to sort a column by simply clicking on the header. A Ctrl + header click performs multi-sorting. Sort data in either ascending or descending order.


Selection

JavaScript Tree Grid allows selecting rows or cells. One or more rows or cells can also be selected by holding Ctrl or Command, or programmatically.

JavaScript Tree Grid Cell Selection.


JavaScript Tree Grid Width and Height.

Width and height

Change the JavaScript Tree Table size by setting the width and height properties. Horizontal and vertical scrollbars will appear when the content overflows the Tree Grid element. For the Tree Grid to fill its parent container, the user has to simply set the height and width to 100%.


Templates

Using templates, users can create custom user experiences in the JavaScript Tree Grid. There are template options to create custom headers, custom cell contents, and toolbars.

JavaScript Tree Grid Column template.


JavaScript Tree Grid Column.

Column

Columns define the schema of a data source in JavaScript Tree Grid. Features include formatting, column definitions, text wrapping, column chooser, column menu, column reordering, and other important features.


Context menu

The JavaScript Tree Grid context menu provides a list of actions to be performed. It appears when a cell, header, or pager is right-clicked. The context menu items can be customized according to user preference.


Stacked headers

Stacked headers allow grouping and visualizing column headers in a stacked manner. There is no limit to the number of columns that can be stacked. The data columns can still be sorted and filtered.


Row height

Row heights can be adjusted to display more rows in a view port. It is also possible to set row heights conditionally.


Exporting

Export to PDF, CSV, and Excel formats in JavaScript Tree Grid.

Excel, PDF, CSV export

Easily export the HTML5 Tree Grid control in various file formats such as Excel, PDF, or CSV. Users can also programmatically customize the exported document.

Print JavaScript Tree Grid content.

Print

Users can print data either by using the print option from the toolbar or programmatically. Print all the rows of a JavaScript Tree Grid regardless of the number of pages it has. There is also an option to print the currently viewed page only.


Themes

Four built-in SASS-based themes are available such as: Material, Bootstrap, Fabric, and High Contrast. Simplify theme customization either by overriding the existing SASS styling or creating custom themes by using the Theme Studio application.

JavaScript TreeGrid Themes.


Accessibility

Keyboard navigation in JavaScript TreeGrid.

Keyboard navigation

The HTML5 Tree Grid ensures that every cell is accessible using the keyboard. Major features like sorting, selection, and editing can be performed using keyboard commands alone; no mouse interaction required. This helps in creating highly accessible applications using this component.

Accessibility and screen reader support in JavaScript Tree Grid.

Screen reader

The JavaScript Tree Grid has complete WAI-ARIA accessibility support. Its UI includes high-contrast visual elements, helping visually impaired people have the best viewing experience. Also, the valid UI descriptions are easily accessible through assistive technologies such as screen readers.


Globalization and localization

Format dates and numbers in JavaScript Tree Grid.

Globalization

Tree Grid in JavaScript enables users from different locales to use it by formatting the date, currency, and numbering to suit local preferences. It uses the internalization (i18n) library to handle value formatting.

Show right-to-left language in JavaScript Tree Grid.

Right to left (RTL)

Right-to-left rendering allows displaying the text and layout of the JavaScript TreeGrid from right to left. This improves the user experience and accessibility for RTL languages.

Localize JavaScript Tree Grid UI strings.

Localization

Users can localize all the strings used in the user interface of the JavaScript Tree Grid control. It uses the localization (l10n) library to localize UI strings.


JavaScript Tree Grid Code Example

Easily get started with the JavaScript Tree Grid using a few simple lines of HTML and TS code example as demonstrated below. Also explore our JavaScript Tree Grid Example that shows you how to render and configure a TreeGrid in JavaScript.

<div class="control-section">
    <div class="content-wrapper">
        <div id="TreeGrid">
        </div>
    </div>
</div>
import { TreeGrid, Page } from '@syncfusion/ej2-treegrid';
import { sampleData } from './data-source';

/**
 * Default TreeGrid sample
 */
TreeGrid.Inject(Page);

    let treegrid: TreeGrid = new TreeGrid(
        {
            dataSource: sampleData,
            childMapping: 'subtasks',
            height: 350,
            treeColumnIndex: 1,
            allowPaging: true,
            columns: [
                { field: 'taskID', headerText: 'Task ID', width: 70, textAlign: 'Right' },
                { field: 'taskName', headerText: 'Task Name', width: 200, textAlign: 'Left' },
                { field: 'startDate', headerText: 'Start Date', width: 90, textAlign: 'Right', type: 'date', format: 'yMd' },
                { field: 'endDate', headerText: 'End Date', width: 90, textAlign: 'Right', type: 'date', format: 'yMd' },
                { field: 'duration', headerText: 'Duration', width: 80, textAlign: 'Right' },
                { field: 'progress', headerText: 'Progress', width: 80, textAlign: 'Right' },
                { field: 'priority', headerText: 'Priority', width: 90 }
            ]
        });
    treegrid.appendTo('#TreeGrid');

Other supported frameworks

The Tree Grid component is also available in Blazor, React, Angular, and Vue frameworks. Check out the different Tree Grid platforms from the links below,




65+ JAVASCRIPT UI CONTROLS

Frequently Asked Questions

  • Load large amounts of data by dynamically loading child data on demand.
  • Include flexible UI interactions like expanding and collapsing parent records, dialog editing, and more.
  • Flexible data binding with support to use local and remote data sources such as JSON, RESTful services, OData services, and WCF services.
  • One of the best JavaScript Tree Grid in the market that offers feature-rich UI to interact with the software.
  • Attractive UI appearance with built-in themes such as fabric, bootstrap, etc.
  • Simple configuration and API.
  • Supports all modern browsers.
  • Mobile-touch friendly and responsive.
  • Expansive learning resources such as demos and documentation to learn quickly and get started with JavaScript Tree Grid.

We do not sell the JavaScript Tree Grid separately. It is only available for purchase as part of the Syncfusion JavaScript suite, which contains over 70 JavaScript components, including the Tree Grid. A single developer license for the Syncfusion Essential Studio for JavaScript suite costs $995.00 USD, including one year of support and updates. On top of this, we might be able to offer additional discounts based on currently active promotions. Please contact our sales team today to see if you qualify for any additional discounts.

You can find our JavaScript Tree Grid demo here.

No, our 70 JavaScript components, including Tree Grid, are not sold individually, only as a single package. However, we have competitively priced the product so it only costs a little bit more than what some other vendors charge for their Tree Grid alone. We have also found that, in our experience, our customers usually start off using one of our products and then expand to several products quickly, so we felt it was best to offer all 70 JavaScript components for a flat fee of $995/developer. On top of this, we might be able to offer additional discounts based on currently active promotions. Please contact our sales team today to see if you qualify for any additional discounts.

No, this is a commercial product and requires a paid license. However, a free community license is also available for companies and individuals whose organizations have less than $1 million USD in annual gross revenue and five or fewer developers.

A good place to start would be our comprehensive getting started documentation.

Read independent,
authenticated reviews
on G2

Download Now Pricing

What do our customers say about us?

double quotes

We're using the file formats and Windows/JavaScript list controls a lot. They're fast, easy to use, and the documentation is good and contains examples. Tickets with questions or suggestions were answered within a day, so we're happy to use the Syncfusion libraries.
Daniel Persidok

Daniel Persidok

wpd onshore GmbH & Co. KG

double quotes

Using Syncfusion Angular and JavaScript controls makes front-end web development a piece of cake. Each component has many properties that can be configured as per your desire, methods that can be used to interact with the element, and a lot of events that trigger at different stages, which makes modifying your components according to the state of the application an easy task. Also, their support is amazing! They always offer a sample working project, which makes it very simple to solve your question about your code.
Carlos Rodriguez Garcia

Carlos Rodriguez Garcia

Vistatec

Transform your applications today by downloading our free evaluation version Download Free Trial

Awards

Greatness—it’s one thing to say you have it, but it means more when others recognize it. Syncfusion is proud to hold the following industry awards.

Up arrow icon

Warning Icon You are using an outdated version of Internet Explorer that may not display all features of this and other websites. Upgrade to Internet Explorer 8 or newer for a better experience.Close Icon

Live Chat Icon For mobile