[2017-12-20]
var grid = $("#gridMaster").data("kendoSmartGrid");
grid.select(grid.select().next()); // 選中當前行的下一行
这种写法的好处就是不用考虑Grid Header的行数,也不用关心select()取索引由0开始,select()选中索引由1开始等部问题
[2017-12-19]
var grid = $("#gridMaster").data("kendoSmartGrid");
var row = grid.select(); // 取當前行。 注意:select()取索引由 0 開始var grid_header_row = 1; // Grid Header 的行數
var idx = 1 + grid_header_row + row.index() + 1; // 下一行索引(下一行 = 1(兩個select()的差異數) + [Grid Header 的行數] + [當前行索引] + 1)
//或
//var idx = 1 + grid_header_row + row.next().index();
grid.select("tr:eq(" + idx + ")"); // 選中下一行。注意:select()選中行,由1 開始并且要加上Grid Header的行數
来个完整的方法
moveRow: function (move) {
var that = this;
var grid = $("#gridMaster").data("kendoSmartGrid");
var len = grid._data.length;
var row = grid.select();
//因為index是從0開始,而grid.select()是從1開始,所以select時的index需要加1
if (move == "up") {
var rowIndex = row.prev().index() + 1;
if (rowIndex == 0) {
myUI.showMsg('已到頂行!', "系統提示", "ok", "warning", null);
grid.select('tr:eq(1)');
}
else {
grid.select('tr:eq(' + rowIndex + ')');
}
return that.returnData();
}
if (move == "down") {
var rowIndex = row.next().index() + 1;
if (rowIndex == 0) {
myUI.showMsg('已到最後一行!', "系統提示", "ok", "warning", null);
grid.select('tr:eq(' + len + ')');
}
else {
grid.select('tr:eq(' + rowIndex + ')');
}
return that.returnData();
}
},
returnData: function () {
var grid = $("#gridMaster").data("kendoSmartGrid");
var row = grid.select();
var dataItem = grid.dataItem(row);
return dataItem;
}