[英]Selecting Multiple Cells on a KendoGrid in Javascript
我有一个场景,用户可以在网格上选择多个单元格。 我想验证用户选择并取消选择任何无效的单元格。 我试图在我的网格上的更改功能中实现这一点。 我目前的方法是获取当前选定的单元格,确定哪些单元格有效并选择我找到的有效单元格列表。
根据Kendo的文档,grid.select()函数确实接受一个参数,但只接受一个行数组作为参数。 这解释了为什么以下不起作用。
我需要一个解决方案,允许我设置突出显示的单元格,并检索突出显示的单元格(我目前可以通过grid.select()方法获取选定的单元格)。
有合理的方法吗?
$scope.myKendoGridOptions = {
selectable: "multiple, cell",
change: function (e) {
if (!$scope.jsSelectChangeEvent) {
var grid = $('#myKendoGrid').data("kendoGrid");
var selectedItems = grid.select();
if (selectedItems.length > 1) {
var validItems = [];
var validRowIndex = selectedItems[0].closest("tr").rowIndex;
for (var i = 0; i < selectedItems.length; i++) {
if (selectedItems[i].closest("tr").rowIndex === validRowIndex) {
validItems.push(selectedItems[i]);
}
}
//Avoids Infinite loop
$scope.jsSelectChangeEvent = true;
//im expecting this to select my valid cells, but it has no effect
grid.select(validItems);
}
} else {
$scope.jsSelectChangeEvent = false;
}
}
};
grid.select(validItems)确实接受单元格作为参数。 问题是我需要在调用grid.select之前调用grid.clearSelect()以获得所需的效果。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.