在ng-options是对象的多选元素中,有没有办法在ng-change中传递对象键或值?
在下面的例子中,$scope.check
函数没有收到任何参数,但希望它能获得密钥或值。
<select ng-model="$scope.someArray" ng-change="$scope.check(key)" ng-options="key as val for (val, key) in $scope.options" multiple></select>
,其中
$scope.options = {a: 1, b: 2}
答案 0 :(得分:2)
更改您的选择,您不应在视图中使用 $scope
,也可以使用ng-model
的变量并将其传递到 check()
内功能
<强> HTML:强>
<div class="media-list" ng-controller="dishDetailController">
<select ng-model="selected" ng-change="check(selected)" ng-options="key as val for (val, key) in options"></select>
</div>
<强>控制器强>:
app.controller("dishDetailController", ["$scope",
function($scope) {
$scope.selected ;
$scope.options = {a: 1, b: 2};
$scope.check = function(val){
alert(val);
}
}
]);
<强> DEMO 强>
答案 1 :(得分:0)
试图让这个适合你,这是选择
<select class="form-control" ng-change="vm.change(vm.res)" ng-model="vm.res" ng-options="value as key for (key , value) in vm.options"></select>
以下是codepen
中的链接