DevExtreme v25.1 is now available.

Explore our newest features/capabilities and share your thoughts with us.

Your search did not match any results.

JavaScript/jQuery Data Grid - Row Selection

In this demo, the JavaScript DataGrid allows users to select only one row at a time. To enable this mode, set the selection.mode property to "single". You can click a row to select it, and Ctrl+Click to unselect it. Focus the component's data cells with the arrow keys, Tab, Shift+Tab, Home, and End, and press Space to select a row. Use Ctrl+Space to unselect the selected row.

You can access the selected row data from the onSelectionChanged function. In this demo, this function fetches the selected row's information and displays it under the grid.

Backend API
$(() => { $('#gridContainer').dxDataGrid({ dataSource: employees, keyExpr: 'ID', selection: { mode: 'single', }, hoverStateEnabled: true, showBorders: true, columns: [{ dataField: 'Prefix', caption: 'Title', width: 70, }, 'FirstName', 'LastName', { dataField: 'Position', width: 180, }, { dataField: 'BirthDate', dataType: 'date', }, { dataField: 'HireDate', dataType: 'date', }], onSelectionChanged(selectedItems) { const data = selectedItems.selectedRowsData[0]; if (data) { $('.employeeNotes').text(data.Notes); $('.employeePhoto').attr('src', data.Picture).attr('style', null); } }, }); });
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" lang="en"> <head> <title>DevExtreme Demo</title> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=5.0" /> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> <script>window.jQuery || document.write(decodeURIComponent('%3Cscript src="js/jquery.min.js"%3E%3C/script%3E'))</script> <link rel="stylesheet" type="text/css" href="https://cdn3.devexpress.com/jslib/25.1.3/css/dx.light.css" /> <script src="js/dx.all.js"></script> <script src="data.js"></script> <link rel="stylesheet" type="text/css" href="styles.css" /> <script src="index.js"></script> </head> <body class="dx-viewport"> <div class="demo-container"> <div id="gridContainer"></div> <div id="employeeInfo"> <img class="employeePhoto" alt="Employee photo" style="visibility: hidden" /> <p class="employeeNotes"></p> </div> </div> </body> </html>
#employeeInfo .employeePhoto { height: 100px; float: left; padding: 20px; } #employeeInfo .employeeNotes { padding-top: 20px; text-align: justify; } .dark #employeeInfo .employeeNotes { color: rgb(181, 181, 181); }
const employees = [{ ID: 1, FirstName: 'John', LastName: 'Heart', Prefix: 'Mr.', Position: 'CEO', Picture: '../../../../images/employees/01.png', BirthDate: '1964/03/16', HireDate: '1995/01/15', Notes: 'John has been in the Audio/Video industry since 1990. He has led DevAv as its CEO since 2003.\r\n\r\nWhen not working hard as the CEO, John loves to golf and bowl. He once bowled a perfect game of 300.', Address: '351 S Hill St.', }, { ID: 20, FirstName: 'Olivia', LastName: 'Peyton', Prefix: 'Mrs.', Position: 'Sales Assistant', Picture: '../../../../images/employees/09.png', BirthDate: '1981/06/03', HireDate: '2012/05/14', Notes: 'Olivia loves to sell. She has been selling DevAV products since 2012. \r\n\r\nOlivia was homecoming queen in high school. She is expecting her first child in 6 months. Good Luck Olivia.', Address: '807 W Paseo Del Mar', }, { ID: 4, FirstName: 'Robert', LastName: 'Reagan', Prefix: 'Mr.', Position: 'CMO', Picture: '../../../../images/employees/03.png', BirthDate: '1974/09/07', HireDate: '2002/11/08', Notes: 'Robert was recently voted the CMO of the year by CMO Magazine. He is a proud member of the DevAV Management Team.\r\n\r\nRobert is a championship BBQ chef, so when you get the chance ask him for his secret recipe.', Address: '4 Westmoreland Pl.', }, { ID: 5, FirstName: 'Greta', LastName: 'Sims', Prefix: 'Ms.', Position: 'HR Manager', Picture: '../../../../images/employees/04.png', BirthDate: '1977/11/22', HireDate: '1998/04/23', Notes: "Greta has been DevAV's HR Manager since 2003. She joined DevAV from Sonee Corp.\r\n\r\nGreta is currently training for the NYC marathon. Her best marathon time is 4 hours. Go Greta.", Address: '1700 S Grandview Dr.', }, { ID: 6, FirstName: 'Brett', LastName: 'Wade', Prefix: 'Mr.', Position: 'IT Manager', Picture: '../../../../images/employees/05.png', BirthDate: '1968/12/01', HireDate: '2009/03/06', Notes: 'Brett came to DevAv from Microsoft and has led our IT department since 2012.\r\n\r\nWhen he is not working hard for DevAV, he coaches Little League (he was a high school pitcher).', Address: '1120 Old Mill Rd.', }];