Я хотел бы перейти к строке на Kendo-Grid. У меня есть 4 кнопки, первая, предыдущая, следующая и последняя. Когда кнопка нажата, она выделит запись из Kendo-Grid. Я не уверен, как это достичь. Я могу получить индекс строки при нажатии кнопки, но я не могу заставить Kendo-Grid загорать строку и извлекать запись, которая будет отображаться в текстовом поле. вот несколько кусок моего кода:Kendo Grid Переход от строки (сначала, назад, далее, последним)
На Вид
<div>
<button id="reg-view-first" title="First" class="menu-item supplementary-table-menu k-grid-add" onclick="javascript:first();">
<img src="@Url.Content("~/Images/first_16.png")" /></button>
<button id="reg-view-back" title="Back" class="menu-item supplementary-table-menu k-grid-add" onclick="javascript:back();">
<img src="@Url.Content("~/Images/back_16.png")" /></button>
<button id="reg-view-next" title="Next" class="menu-item supplementary-table-menu" onclick="javascript:next();">
<img src="@Url.Content("~/Images/forward_16.png")" /></button>
<button id="reg-view-prev" title="Last" class="menu-item supplementary-table-menu" onclick="javascript:last();">
<img src="@Url.Content("~/Images/last_16.png")" /></button>
</div>
function last() {
var grid = $("#queue-table").data("kendoGrid");
//var rowCount = grid.dataSource.view().length; //on current display.
var rowCount = grid.dataSource.data().length; //Actual record count.
var itemID = grid.dataSource.at(rowCount - 1).ItemID
grid.clearSelection();
var row = $(this).closest("tr");
var dataItem = grid.dataItem(row);
row.addClass("k-state-selected");
//grid.select(itemID);
//alert(itemID);
}
function back() {
var grid = $("#queue-table").data("kendoGrid"); //document.getElementsByName("queue-table");
if (grid != null || grid != "undefined")
{
//get the selected index.
var dataRows = grid.items();
var rowIndex = dataRows.index(grid.select());
//alert(rowIndex);
var dataItem = grid.dataItem(grid.select());
//var itemID = grid.columns[0].field;
var itemID = grid.dataSource.at(1).ItemID;
grid.select("tr[data-uid='" + itemID + "']");
var newRow = dataRows.index(grid.select());
newRow.addClass("k-state-selected");
//assign the new selected index
//var newIndex = 0;
//if (rowIndex > 0)
//{
// newIndex = rowIndex - 1
//}
//alert(newIndex);
}
Im новичок в кендо и уже провел пару часов выяснить, что делать.
Условие в этой строке 'if (grid! = Null || grid! =" Undefined ")' неверно. 'grid! =" undefined "' не проверяет, является ли сетка 'undefined', но если это строка" undefined ". Вы должны удалить метки кавычек. Кроме того, вы, вероятно, хотите проверить, что оба условия являются истинными, а не одно, поэтому изменение '||' на '&&' также является хорошей идеей. Самый простой способ сделать то, что вы хотите в этом 'if', -' if (grid) '. Это позволит убедиться, что сетка не является ни «null», ни «undefined». – Shai
Hi Shai, HTanks для этого. Вы правы, он должен быть &&. оба условия должны быть выполнены. Попробуй это. – al123