Я хочу проверить, есть ли у строки сетки связанные записи в дочерней таблице / сетке.Я попытался подключить источник данных дочерней сетки к событию привязки данных родительской сетки.Две сетки связаны столбцом ParentId (который является первичным ключом родительской сетки).В событии привязки данных родительской сетки, как я могу сначала прочитать все данные из дочерней таблицы в datasource1, чтобы потом я мог использовать это для поиска дочерних элементов строк родительской сетки?
Grid_OnDataBound = function (e) {
var dataSource1 = new kendo.data.DataSource({
serverFiltering: false,
transport: {
read: {
/* omitted for brevity */
dataType: "json",
url: "@Url.Action("Items_Read", "Home")"
}
}
});
dataSource1.read();
// get the root grid
var grid = $("#parent_grid").getKendoGrid();
// get its data source
var dataSource = grid.dataSource;
var items = e.sender.items(); // get all rows
items.each(function () {
var row = $(this);
var dataItem = e.sender.dataItem(row);
var parentId = dataItem.ParentId;
var children = new kendo.data.DataSource({
data: dataSource1.data(),
// filter to leave only the child items
filter: {
field: "ParentId",
operator: "eq",
value: parentId
}
});
children.read();
// check if there are any child items
if (children.view().length == 0) {
row.find(".k-hierarchy-cell").html("");
}
})
};