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
Syncfusion Feedback

Trusted by the world’s leading companies

Syncfusion Trusted Companies

Overview

JavaScript Data Grid, also known as the JavaScript DataGrid, is a feature-rich control for displaying data in a tabular format. Its wide range of functionalities includes data binding, editing, Excel-like filtering, custom sorting, aggregating rows, selection, and support for Excel, CSV, and PDF formats.


Why choose Syncfusion Essential Studio® JavaScript DataGrid?

A high performance JavaScript Grid.

High performance

Well thought out efforts, and focuses mainly on fast paced performance to load millions of records in just a second.

JavaScript Grid seamless data binding.

Seamless data binding

Bind data seamlessly with various local and remote data sources such as JSON, OData, WCF, and RESTful web services with the help of data manager.

JavaScript Grid adapts to any resolution.

Adapts to any resolution

DataGrid has a highly responsive layout and an optimized design for desktops, touch screens, and smart phones. It works well on all mobile phones that use iOS, Android, or Windows OS.

JavaScript Grid flexible editing.

Flexible editing

The JavaScript Grid performs create, read, update, and delete operations (CRUD) more easily with a list of business objects or remote data service with the help of a data manager.

JavaScript Grid create your own template designs.

Create your own template designs

Allows users to create custom user experiences in the JavaScript Grid based on their application needs using a wide range of template options.

JavaScript Grid customizable themes.

Attractive customizable themes

Cutting-edge design with 5+ built-in themes such as Fluent, Tailwind CSS, Bootstrap, Material, Fabric, and more. Utilize the online Theme Studio tool to customize themes easily.

JavaScript Grid exporting and printing.

Easy export and printing

Export the Data Grid in various file formats, including Excel, PDF, and CSV. Print all the rows, regardless of the number of pages, as well as the currently viewed page.

JavaScript Grid globalization and localization.

Globalization and localization

Enables users from different locales to use them by formatting dates, currency, and numbering to suit preferences.


JavaScript DataGrid Code Example

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

<div class="control-section">
    <div class="content-wrapper">
        <div id="Grid">
        </div>
    </div>
</div>
import { loadCultureFiles } from '../common/culture-loader';
import { Grid, Selection } from '@syncfusion/ej2-grids';
import { Query, DataManager } from '@syncfusion/ej2-data';
import { orderData } from './data-source';

Grid.Inject(Selection);

/**
 * Default Grid sample
*/

    loadCultureFiles();
    let data: Object = new DataManager(orderData as JSON[]).executeLocal(new Query().take(15));
    let grid: Grid = new Grid(
        {
            dataSource: data,
            columns: [
                { field: 'OrderID', headerText: 'Order ID', width: 120, textAlign: 'Right' },
                { field: 'CustomerName', headerText: 'Customer Name', width: 150 },
                { field: 'OrderDate', headerText: 'Order Date', width: 130, format: 'yMd', textAlign: 'Right' },
                { field: 'Freight', width: 120, format: 'C2', textAlign: 'Right' },
                { field: 'ShippedDate', headerText: 'Shipped Date', width: 140, format: 'yMd', textAlign: 'Right' },
                { field: 'ShipCountry', headerText: 'Ship Country', width: 150 }
            ]
        });
    grid.appendTo('#Grid');

JavaScript Data Grid skeleton loading indicator.

Skeleton loading indicator

The Data Grid shows the Shimmer effect as a loading indicator while fetching data and binding it to the grid during initial rendering, refreshing, or after performing grid actions like sorting, filtering, grouping, and more. The data grid offers two types of loading indicator effects: spinner and shimmer.


Adaptive UI layout

The Data Grid user interface is customized and redesigned for great views and usability on small screens. Its features include filter, sort, search, column chooser, column menu, pager dropdown, and edit dialogs that are adaptive to the screen size and render row elements in a vertical direction.

JavaScript Data Grid adaptive UI Layout.


JavaScript DataGrid column.

Column

Columns define the schema of the data source in the JavaScript DataGrid. It supports formatting, auto-generating columns, column definitions, freezing rows and columns, column spanning, text wrapping, column chooser, column menu, and other features.


Paging

Paging is used to view a segment of data from the assigned data source. The JavaScript Data Grid offers a 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.

JavaScript DataGrid paging.


JavaScript Grid/Data Grid sorting.

Sorting

Sort rows either in ascending or descending order against a column by simply clicking the header. Sort multiple columns’ data by holding the Ctrl key + header click. In addition, you can define your own custom sorting logic based on the application needs.


Filtering

Filtering helps view particular or related records that meet a given criteria in the data grid. The JavaScript Data Grid supports various filter types, including powerful Excel-like filters. Choose the appropriate filter type, define your own custom filtering logic, and customize the filtering UI based on the application’s needs. Diacritic characters can also be filtered.

JavaScript DataGrid filtering.


JavaScript DataGrid selection.

Selection

Select rows or cells either by using checkbox or by simply clicking them. Select more than one row or cell by holding Ctrl or Shift or Command, or programmatically.


Editing

The JavaScript Data Grid supports create, read, update, and delete operations (CRUD). In addition to built-in editor components to edit a particular column value, custom editor components can be created using templates according to the application’s needs. With the help of a data manager, you can perform editing operations with JavaScript array collection or remote data service.

JavaScript DataGrid editing.


JavaScript Data Grid grouping.

Grouping

Group rows to display the data in an organized hierarchical structure in ascending or descending order to facilitate easier expansion and collapse of records. There is an option to group records of the desired column by simple drag and drop of that column in an interactive drop area.


Aggregation

Aggregates for column values can be easily displayed using the aggregate feature. Aggregates can be customized to show their value in individual summary rows, individual group summary rows, or group caption rows.

JavaScript DataGrid aggregation.


JavaScript DataGrid with Freeze rows and columns.

Frozen rows and columns

Frozen rows and columns are visible at the top and on the left, right, both , or fixed position, respectively, making the remaining grid content scrollable. This feature is mainly used to compare cell values in JavaScript DataGrid component.


The JavaScript Data Grid header has to be in a fixed position when scrolling the document vertically to visualize the grid content along with the column header.

JavaScript Data Grids sticky header.


JavaScript Grid row drag and drop.

Row drag and drop

The JavaScript Grid allows users to drag and drop rows to another DataGrid or custom component. Users can also drag and drop rows within the same DataGrid using the drag icon and transfer rows between different groups.


Master-detail Grid

JavaScript Master Detail Grid is a use-case scenario in which a record’s details are viewed in a separate data grid by clicking a particular row.

JavaScript master detail Grid.


State management in JavaScript Data Grid.

State management

The state management in the JavaScript Data Grid component allows you to maintain the grid’s state even after a browser refresh or when navigating to a different page within the same browser session. This feature is especially beneficial for retaining the grid’s configuration and data following a page reload.


Live update

The DataGrid updates live data in its cells at specific time intervals. These updates occur without causing any lag or slowdown, ensuring that the system remains highly responsive and efficient.

Live update with JavaScript Data Grid.


Additional features

JavaScript Data Grid with row height.

Row height

Row height is a major factor when displaying the number of records in the viewport, and it is easily customizable based on the application’s UI requirements. It is also possible to set row height conditionally.

Copy to clipboard from JS Grids.

Copy to clipboard

The clipboard allows users to copy selected rows or cells’ data into it. Use the Ctrl+C and Ctrl+Shift+H key combinations to copy data with and without headers, respectively.

JavaScript Data Grid with context menu.

Context menu

Performs various actions in a JavaScript DataGrid using the popup menu that appears when the cell, header, or pager is right-clicked. In addition to built-in default menu items, custom context menu items can be added.

Width and height in JavaScript Data Grid.

Width and height

Set the width and height properties to change the size of the data grid. When the content overflows the grid element, horizontal and vertical scrollbars will appear. To fill the data grid’s parent container, simply set the height and width to 100%.

JavaScript DataGrid with stacked headers.

Stacked headers

Stacked headers allow grouping and visualizing column headers in a stacked manner. The number of columns that can be stacked is unlimited. Perform all Data Grid actions even when the columns are stacked.


Accessibility

Keyboard navigation in HTML5 DataGrid.

Keyboard navigation

The JavaScript Grid component ensures that every cell is accessible using the keyboard. Major features like sort, select, and edit can be performed using keyboard commands alone; no mouse interaction is required. This helps in creating highly accessible applications using this component.

Accessibility and screen reader support in JavaScript DataGrid.

Screen reader

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

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

Right to left (RTL)

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


Mobile-optimized and touch-friendly

The Data Grid component improves usability and provides an optimized and responsive design for desktops, touchscreens, and phones across all operating systems, including iOS, Android, and Windows.

Touch support in HTML5 Grid.

Touch support

User-friendly touch gestures and an interactive UI design provide the best user experience. All HTML5 Data Grid features work on touch devices with zero configuration.

Responsive pager UI in JavaScript Grid.

Responsive pager

The Data Grid pager acts intelligently and changes its complete UI responsively based on the dimension. Its optimized design provides the best UI interaction on different devices.






Other supported frameworks

The DataGrid is available for the Blazor, React, Angular, and Vue frameworks. Explore its platform-specific options through the following links:

Supported browsers

The HTML5 DataGrid works well with all modern web browsers, including Chrome, Firefox, Edge, Safari, and Opera.

Supported browsers in JavaScript DataGrid.

85+ JAVASCRIPT UI CONTROLS

Frequently Asked Questions

The Syncfusion JavaScript DataGrid supports the following features:

  • Load millions of records in just a second.
  • Mobile-first design that adapts to any resolution.
  • Flexible data binding with support to use local and remote data sources such as JSON, RESTful services, OData services, and WCF services.
  • Flexible editing and intuitive record selection modes.
  • Out-of-the-box Excel-like filtering and grouping options.
  • Countless column customizations and data summaries.
  • Seamless data exporting options like PDF, CSV, and Excel.
  • One of the best JavaScript DataGrid in the market that offers feature-rich UI to interact with the software.
  • Simple configuration and API.
  • Supports all modern browsers.
  • Expansive learning resources such as demos and documentation to learn quickly and get started with JavaScript DataGrid.

We do not sell the JavaScript DataGrid separately. It is only available for purchase as part of the Syncfusion team license. This contains over 1,800 components and frameworks, including the JavaScript DataGrid. The price of the team license starts at $395 per month for 5 developers, and includes support and updates until the subscription expires. In addition, we might offer discounts based on currently active promotions. Please contact our product specialists today to see if you qualify for any additional discounts.

You can find our JavaScript DataGrid demo, which demonstrates how to render and configure the DataGrid.

No, our 1,800+ components and frameworks for web, mobile, and desktop, including our JavaScript DataGrid, are not sold individually. They are only available as part of a team license. However, we have competitively priced the product, so it only costs a little bit more than what some other vendors charge for their DataGrid control 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 1,800+ components and frameworks for a subscription fee that starts at $395 per month for a team of 5 developers. Additionally, we might be able to offer discounts based on currently active promotions. Please contact our product specialists 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, 5 or fewer developers, and 10 or fewer total employees.

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

Our Customers Love Us

Having an excellent set of tools and a great support team, Syncfusion reduces customers’ development time.
Here are some of their experiences.

Rated by users across the globe

Transform your applications today by downloading our free evaluation version
Download Free Trial No credit card required.

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.

Recent activities in JavaScript Data Grid tutorials and blogs

The JavaScript Data Grid tutorial videos and blog posts will guide you in building your first app with JavaScript controls. They provide problem-solving strategies, describe features and functionalities, announce new feature releases, explain best practices, and showcase example scenarios. Explore our latest posts on our blog and tutorial video channels for JavaScript Data Grid updates.

Up arrow icon