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

JavaScript 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 JavaScript DataGrid?

JavaScript grid high performance

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) easier with list of business objects or remote data service with the help of 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 need 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 easier.

JavaScript grid exporting and printing

Easy export and printing

Export the Data Grid in various file formats, including Excel, PDF, and CSV. Print all of 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 example as demonstrated below. Also explore our JavaScript DataGrid Example that 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 effect, spinner and shimmer.


Adaptive UI layout

The JavaScript Data Grid user interface is customized and redesigned for great views and usability on small screens. Filter, sort, search, and edit dialogs adaptive to the screen size and also render row elements in a vertical direction.

JavaScript Data Grid Adaptive UI Layout


JavaScript DataGrid Column

Column

Columns define the schema of 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 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 the ascending or descending order against a column by simply clicking the header. Sort multiple columns’ data by holding 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 in the Data Grid, which meet a given criteria. JS Data Grid with rich UI supports various filter types that include powerful Excel-like filter. Choose appropriate filter type, define your own custom filtering logic, and customize the filtering UI based on the application 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 Grid in JavaScript supports create, read, update, and delete operations (CRUD). In addition to built-in editor controls to edit a particular column value, custom editor controls can be created according to the application needs using templates. Perform editing operations with JavaScript array collection or remote data service with the help of data manager.

JavaScript DataGrid Editing


JavaScript Data Grid Grouping

Grouping

Group rows to display the data in an organized hierarchical structure either in the 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 in 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 left or right or both the sides of the grid and make the remaining grid content scrollable. It 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 you to drag and drop rows to another Data Grid or custom component. You can drag and drop rows within the same Data Grid using the drag icon.


Transform to a master-detail Grid

JavaScript Master Detail Grid is a use case scenario, in which the detail of a record is viewed in a separate data grid by clicking a particular row.

JavaScript master detail 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 view port, and it is easily customizable based on the application’s UI requirement. It is also possible to set row height conditionally.

Copy to clipboard from JS Grids

Copy to Clipboard

The clipboard provides an option to copy selected rows or cells’ data into the clipboard. Use 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

Change the size of the Data Grid by setting the width and height properties. Horizontal and vertical scrollbars will appear when the content overflows the DataGrid element. For the DataGrid to fill its 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. There is no limit to the number of columns that can be stacked. Perform all JavaScript DataGrid 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 Grids

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 in different devices.





Other supported frameworks

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

Supported browsers

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

Supported browsers of JavaScript DataGrid

80+ 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.

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

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

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
Live Chat Icon For mobile