New to Kendo UI for jQuery? Download free 30-day trial

Persist Single-Row Selection on Virtual Scrolling in Grid


Product Version 2018.1 117
Product Progress® Kendo UI® Grid for jQuery


When the user selects a row on the first page, scrolls to the second page, and selects a row, the Grid has two selected items.

  • How can I persist the single-row selection when the virtual scrolling functionality of the Grid is used?
  • How can I ensure I always have only one selected row when using the virtually scrollable Grid?


Programmatically handle the collection of item selection on the change event of the Grid.

    <div id="example">
            <div id="grid"></div>
                $(document).ready(function() {
                        dataSource: {
                            type: "odata",
                            serverPaging: true,
                            serverSorting: true,
                            pageSize: 100,
                            transport: {
                                read: ""
                            schema: {
                               model: {
                        height: 543,
                        scrollable: {
                            virtual: true
                        change: function(e) {
                          var selectedRows =;
                          var dataItem = this.dataItem(selectedRows[0]);
                          e.sender._selectedIds= {};
                          e.sender._selectedIds[ dataItem.OrderID ]= true;
                        sortable: true,
                        columns: [
                            { field: "OrderID", title: "Order ID", width: 110 },
                            { field: "CustomerID", title: "Customer ID", width: 130},
                            { field: "ShipName", title: "Ship Name", width: 280 },
                            { field: "ShipAddress", title: "Ship Address" },
                            { field: "ShipCity", title: "Ship City", width: 160 },
                            { field: "ShipCountry", title: "Ship Country", width: 160 }

                /*A horizontal Grid scrollbar appears if the browser window is shrunk too much.*/
                #grid table
                    min-width: 1190px;

In this article