如何在角度选择中使用或条件ng-options滤波器

时间:2016-03-14 05:57:20

标签: angularjs

这是我的js数据

$scope.dynamicCmb = [{
        id: 1,
        label: 'aLabel',
        subItem: ['aSubItem1','aSubItem2','aSubItem3']
    }
            , {
                id: 2,
                label: 'bLabel',
                subItem: [ 'bSubItem' ]
            }
    ];

    $scope.selectedid = 2;

下面是html

 <select ng-options="item.subItem for item in dynamicCmb | filter:{id:selectedid}" ng-model="selected"></select>

上面的代码工作正常。如果我更新了selectedid值,那么它将根据id字段进行过滤。但我想使用或条件,即我想基于id或标签进行搜索。因此,如果我为selectedid传递id,那么它应该过滤id,如果我为selectedid提供标签,那么它应该在标签上过滤。我想做类似下面的事情

<select ng-options="item.subItem for item in dynamicCmb | filter:{id:selectedid | name:selectedid}" ng-model="selected"></select>

1 个答案:

答案 0 :(得分:0)

您应该通过以下方式执行此操作:使用此方法在js代码中创建自定义函数

Filtering by Multiple Specific Model Properties in AngularJS (in OR relationship)