Я хочу ссылаться на объект моей дочерней сетки и обновить дочернюю сетку с новым идентификатором в фильтре. Когда я ссылаюсь на дочернюю сетку Kendo-Grid, я получаю неопределенный объект.
HTML
<div kendo-grid="customerGrid" k-rebind="mainGridOptions" options="mainGridOptions" k-on-filter-menu-init="filterInit(kendoEvent)">
<div k-detail-template>
<div id="tabstrip" kendo-tab-strip="tabstrip">
<ul>
<li class="k-state-active">СЧЕТА КЛИЕНТА</li>
<li ng-disabled="dis" ng-click="loadDetailAcc()">Полная информация по счету</li>
<li ng-disabled="dis" ng-click="loadDetailGrid()">Просмотр событий по счету</li>
</ul>
<div>
<div>
<div kendo-grid="detailGrid" k-options="detailGridOptios"></div>
</div>
JAVASCRIPT/ANGULARJS
$scope.loadDetailGrid = function () {
console.log($scope.detailGrid);// undefined
$scope.detailGrid.dataSource.read(); //error
};
$scope.detailGridOptios = {
dataSource: {
transport: {
read: '/api/HomeApi/GetAccountEvent',
dataType: "json"
},
pageSize: 3,
filter: { field: "UniqueAccontCode", operator: "eq", value: id }
},
autoBind: false,
height: 180,
pageable: true,
columns: [
{
field: "IDUser",
title: "Идентификатор пользователя",
width: "120px"
},
{
field: "UniqueAccontCode",
title: "Номер счета",
width: "120px"
}, {
field: "LastActData",
title: "Дата последнего действия",
width: "120px"
}, {
field: "Text",
title: "Текст",
width: "120px"
}
]
};
Вам просто нужно добавить: $ scope.detailGrid = "detailGrid"; в вашем Js файле.. я думаю, что это сделает трюк