Example grid insert after / before selected row
by OnaBai
HTML
<link rel="stylesheet" href="http://cdn.kendostatic.com/2013.2.716/styles/kendo.common.min.css">
<link rel="stylesheet" href="http://cdn.kendostatic.com/2013.2.716/styles/kendo.default.min.css">
<script src="http://cdn.kendostatic.com/2013.2.716/js/jquery.min.js"></script>
<script src="http://cdn.kendostatic.com/2013.2.716/js/kendo.all.min.js"></script>
<script src="http://demos.kendoui.com/content/shared/js/people.js"></script>
<button id="before" class="k-button">Insert Before</button>
<button id="after" class="k-button">Insert After</button>
<div id="grid"></div>
CSS
#grid {
width : 490px;
}
JavaScript
var ds = {
data : createRandomData(20),
pageSize: 5,
schema : {
model: {
fields: {
Id : { type: 'number' },
FirstName: { type: 'string' },
LastName : { type: 'string' },
City : { type: 'string' }
}
}
}
};
var grid = $("#grid").kendoGrid({
dataSource: ds,
editable : false,
pageable : true,
selectable: true,
columns :
[
{ field: "FirstName", width: 90, title: "First Name" },
{ field: "LastName", width: 200, title: "Last Name" },
{ field: "City", width: 200 }
]
}).data("kendoGrid");
$("#before").on("click", function() {
var idx = grid.dataSource.indexOf(grid.dataItem(grid.select()));
grid.dataSource.insert(idx, { LastName: "Smith", FirstName: "John", City: "Baiona" });
});
$("#after").on("click", function() {
var idx = grid.dataSource.indexOf(grid.dataItem(grid.select()));
grid.dataSource.insert(idx + 1, { LastName: "Smith", FirstName: "John", City: "Baiona" });});