我有2选择ng选项。我希望第二个选择重复选择name
的values
字段。筛选ng选项
我发现的唯一解决方案是选择对象本身,而不仅仅是第一个选择中的名称字段(类似d as d.name for d in data
) 但为了一致性我宁愿不要。
我可以使用过滤器或类似的东西来解决这个问题吗?
angular.module("App", []).controller("Ctrl", function($scope) {
$scope.data = [{
name : "john",
values : ["Hello", "World"]
}, {
name : "peter",
values : ["Bonjour", "le", "monde"]
}];
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="App" ng-controller="Ctrl">
<label>Name :</label>
<select ng-model="name" ng-options="d.name as d.name for d in data"></select>
<label>Value :</label>
<select ng-model="value" ng-options="d as d for d in data"></select>
</div>
问题是$范围。 name === {{$ index}}而不是名称本身 – IggY
这会将'$ scope.name'的值设置为0,1,这就是操作可能不想这么做。 –
不难有'$ scope.getName = function(id){return $ scope.data [id]}' –