我有以下代码:
Angular Code:
var app = angular.module('App',['mdo-angular-cryptography']);
app.controller('AtvdCtrl', function($scope, $crypto, PassWD, $http){
$scope.frInEtAc = ''; //edited
$scope.decriptar = function(dado){
return $crypto.decrypt(dado, $scope.PassWD.senha);
};
//edited
$scope.frnt = [];
$http.get('myURL')
.success(function(retorno){
$scope.frnt = retorno;
})
.error(function(erro){
console.log(erro);
});
$scope.Atvd = [];
$http.get('myURL')
.success(function(retorno){
$scope.Atvd = retorno;
})
.error(function(erro){
console.log(erro);
});
$scope.inicEtgaAc = [];
$scope.acharInicAc = function(cd){
$http.get('myURL' + cd)
.success(function(returnoI){
$scope.inicEtgaAc = returnIncEntregaA;
})
.error(function(erro){
console.log(erro);
});
};
};
});
HTML代码:
<select id="nmFrInEtAc" ng-options="opt.cdFrnt as (decriptar(opt.nmFrnt) | uppercase) for opt in frnt" ng-model="frInEtAc" ng-change='acharInicAc(frInEtAc)' ng-required='true'>
<option style="display:none" value=""></option>
</select>
特别是在ng-options中,我的功能不起作用。
我在这里指出了所有的依赖性:https://github.com/middleout/angular-cryptography
它确实在这里工作:
<div ng-repeat='atvd in Atvd>
<span ng-bind='decriptar(atvd.nmAtvd)'/>
<div/>
答案 0 :(得分:0)
看起来你正试图迭代一个不存在的变量。您的HTML代码正在使用for opt in frnt
进行迭代,但您的控制器实际上从未为$scope.frnt
设置值。