#javascript #jquery #kendo-grid #kendo-asp.net-mvc
#javascript #jquery #kendo-grid #kendo-asp.net-mvc
Вопрос:
У меня есть следующий код jQuery, который работает для получения значения первой строки, но не выбранной строки:
function setStandardName() {
var grid = $("#BillingsGrid").data("kendoGrid");
var dataItem = grid.dataItem("tbody tr:eq(0)");
dataItem.set("Name", "new value");
console.log(dataItem.Name);
};
Он находит значение первой строки, но мне нужно получить значение выбранной строки
Я попробовал это:
function setStandardName() {
var grid = $("#BillingsGrid").data("kendoGrid");
var dataItem = grid.dataItem($(this).closest("tr"));
dataItem.set("Name", "new value");
console.log(dataItem.Name);
};
Ошибка неперехваченного типа: не удается прочитать свойство ‘set’, равное нулю в этой строке dataItem.set("Name", "new value");
Ответ №1:
попробуйте так.
$('.clickedSomething').click(function() {
var grid = $("#BillingsGrid").data("kendoGrid");
var dataItem = grid.dataItem($(this).closest("tr"));
dataItem.set("Name", "new value");
console.log(dataItem.Name);
};
Ответ №2:
вы можете получить выбранную строку и значение каждой ее ячейки, как в этом примере:
var gridDataArray = $('#Grid').data('kendoGrid')._data;
var selectedslug = gridDataArray[grid.select().index()]['Slug'];
и вы можете выполнить цикл в этом массиве для всех строк данных с помощью оператора foreach