0
J'essaie de lier ui-grille en option extensible. Je suis en mesure d'obtenir les données, mais semble sage de liaison, il me manque quelque chose. Peut-conseils quelqu'un s'il vous plaîtui grille extensible ne montrant pas de données
Voici mon code
--controller -
// JavaScript source code
$scope.gridOptions = {
expandableRowTemplate: 'expandableRowTemplate.html',
expandableRowHeight: 150,
//subGridVariable will be available in subGrid scope
expandableRowScope: {
subGridVariable: 'subGridScopeVariable'
}
}
$scope.gridOptions.columnDefs = [
{ name: 'check_number', field: 'check_number', displayName: 'check_number' }
];
var callData = function() {
alert('call data');
return $http({
method: "post",
url: "/Common/Metasystem/AP/Reports/ReportData.aspx/GetcheckReportData",
dataType: 'json',
data: { beforedt: '01/01/2018', afterdt: '01/01/1900', checknumberlist: '' },
headers: { "Content-Type": "application/json" }
}
)
};
$scope.fetchResult =
function() {
// alert('call');
$scope.gridOptions.data = 'aa';
callData()
.success(function (resultvalue) {
// $scope.resultdata = "[" + JSON.stringify(resultvalue.d) + "]";//issue
$scope.resultdata = JSON.parse(resultvalue.d);
for (i = 0; i < $scope.resultdata.length; i++) {
$scope.resultdata[i].subGridOptions = {
columnDefs: [{ name: "check_number", field: "check_number", displayName: 'check_number' }, { name: "voucher_number", field: "voucher_number", displayName: 'voucher_number' }],
data: $scope.resultdata[i].friends
}
}
$scope.gridOptions.data = $scope.resultdata;
})
.error(function (data) {
console.error('Repos error', data);
})
};
$scope.fetchResult();
--- données JSON de webmethod
[{
"Check_number": "116511",
"Check_date": "2012-11-21T00:00:00",
"Detail": [{
"Check_number": "116511",
"Voucher_number": "10000115",
"Invoice_number": "10000115",
"Invoice_date": "2017-03-23T16:03:38.303",
"Invoice_amount": 125.0,
"Vendor_number": ""
}, {
"Check_number": "116511",
"Voucher_number": "10000115",
"Invoice_number": "10000115",
"Invoice_date": "2017-03-23T16:03:38.303",
"Invoice_amount": 125.0,
"Vendor_number": ""
}]
}]
-------- - page d'aspx
<div ng-controller="MainCtrl" ng-app="app">
<div class="control-group">
<input type="button" class="btn btn-small" ng-click="expandAllRows()" value="Expand All"/>
<input type="button" class="btn btn-small" ng-click="collapseAllRows()" value="Collapse All"/>
</div>
<div ui-grid="gridOptions" ui-grid-pinning ui-grid-expandable class="grid"></div>
</div>