这是我的 Controller
的一部分:
function($scope, $http, $stateParams, $timeout, $q, $ionicPopup, $ionicActionSheet){
$http.get('topics/' + $stateParams.subTopicId + '.json').
success(function(data, status,header, config) {
$scope.questions = data;
});
}
现在这是我的 View
的一部分:
<button ng-click="someFunc('{{questions[qNum].opt1}}')">
{{questions[0].opt1}}
</button>
In the above view {{questions[0].opt1}} works perfectly. But when passed as an arg to ng-click it becomes empty.
再次在我的 Controller
中:
function someFunc(aValue){
alert(aValue); // Empty
}
为什么变量aValue
的值为空。
另一方面,如果我像这样在我的 Controller 中直接声明 $scope.questions
:
$scope.question = [
{ ... }
];
然后 someFunc
正确显示变量的值。这里发生了什么?
我做错了什么?
最佳答案
试试这个:
<button ng-click="someFunc(questions[qNum].opt1)">
此外,您在显示属性时显式绑定(bind)到元素 0,但在您的 ng-click 中您使用的是变量 qNum,因此请确保它已定义。
关于javascript - 无法从 ng-click 获取从 $http 服务获取的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23500923/