根据您之前 select 的内容过滤 angular 下拉功能

Filter angular dropdown function depending of what you select previously

我正在尝试根据您在上一个 select 中的内容过滤 ng-options 下拉列表。这就是我想要实现的目标

如果您选择内部层级 1,则显示所有公司层级

如果您选择内部第 2 层,则显示除 1 之外的所有 - 合作伙伴品牌

如果您选择 Internal Tier 3 仅显示 3b- Answer Branded

这是我的实际代码。

 $scope.companyData = {
            Category: 0,
            InternalTierId: 0
        };

$scope.lookUps = {
companyTier: [
    { Id: 1, Name: '1 - Partner Branded'},
    { Id: 2, Name: '2 - Co-branded'},
    { Id: 3, Name: '3a - Answer Branded'},
    { Id: 4, Name: '3b - Answer Branded'}
],
internalTier: [
    { Id: 1, Name: 'Tier 1' },
    { Id: 2, Name: 'Tier 2' },
    { Id: 3, Name: 'Tier 3' }
]};

这些是下拉菜单。我无法更改 ng-model,因为我正在使用该对象属性。

<select class="form-control" name="companyinternaltier" 
ng-required="true" ng-model="companyData.InternalTierId" 
ng-options="item.Id as item.Name for item in lookUps.internalTier">          
<option value="">- Select Internal Tier Level -</option>

<select class="form-control" name="companytier" ng-required="true" 
ng-model="companyData.Category" ng-options="item.Id as item.Name for
item in lookUps.companyTier | filter: filterTiers()"> 
<option value="">- Select Branding Tier Level -</option></select>

我将 filterTiers() 函数放在过滤词之后,因为我想我可以创建一个函数来执行此操作,但我不知道如何处理它

感谢任何形式的帮助。谢谢

您可以在 Plunker

中使用 ng-change option.See