Reputation: 301
I make some list, on list have date from curent date until last 30 days before. I want send date to webservice. But it always undefined variables. My code like this
HTML
<ion-list>
<ion-item class="animate-repeat" ng-repeat="name in rep">
<div>
<select ng-options="size as size.code for size in sizes"
ng-model="item"
style="background-color:#262261;color: white"
ng-change="update(item)">
</select>
</div>
<!--{{name | date: "y-MM-dd"}}-->
{{name}}
<button type="submit" class="button button-block"
id="buttonblue" ng-click="tracking()">
<font color="white" size="4">Tracking</font>
</button>
</ion-item>
</ion-list>
JS
$scope.rep = [];
for (var i=0; i < 31; i++) {
$scope.item = {};
$scope.code = {};
$scope.sizes = [{code: 123456789, name: 'Modul 1'},
{code: 864369038803163, name: 'Modul 2'},
{code: 864369038796946, name: 'Modul 4'},
{code: 864369038803833, name: 'Modul 5'},
{code: 864369038816645, name: 'Modul 6'},
{code: 864369038797142, name: 'Modul 7'},
{code: 864369038796698, name: 'Modul 8'}];
$scope.update = function (selected) {
$scope.item = selected;
};
$scope.trip = new Date();
$scope.besok =new Date($scope.trip.getTime() - i*(24*60*60*1000));
$scope.rep.push($scope.besok);
$scope.tracking = function () {
kaka.list($scope.item.code, $scope.name).success(function (data) {
console.log(data);
console.log($scope.name);
});
};
}
I want send data $scope.name
but in console.log always show undefined
. I don't know how to send date from my list. Please help me solve my problem.
Thanks
Upvotes: 0
Views: 72
Reputation: 38171
ng-repeat
creates sub-scope
, so variable name
is only available at template's ng-repeat
block, but for your situation you can pass name
as parameter of function tracking
like below:
<button type="submit" class="button button-block" id="buttonblue" ng-click="tracking(name)">
<font color="white" size="4">Tracking</font>
</button>
$scope.tracking = function (name) {
// use name instead of $scope.name
kaka.list($scope.item.code, name).success(function (data) {
console.log(data);
console.log(name);
});
};
Upvotes: 2