如何在AngularJS中按对象的属性过滤?

拉加夫

我有两个对象数组,如下所示:

$scope.countries = [
        {'id' : 1, 'country_name':'India'},
        {'id' : 10, 'country_name':'Australia'},
        {'id' : 2, 'country_name':'England'}
    ];
$scope.states = [
        {'state_id' : 1, 'state_name':'Delhi', 'country_id':{'id':1 ,'country_name':'India'}},
        {'state_id' : 5, 'state_name':'London', 'country_id':{'id':2 ,'country_name':'England'}},
        {'state_id' : 2, 'state_name':'Victoria', 'country_id':{'id':10 ,'country_name':'Australia'}}
    ];

我正在尝试根据country_id对象内的id过滤状态,如下所示:

<select ng-model="sellerCountry" ng-options="item.id as item.country_name for item in countries" required>
    <option value="">Select Country</option>
</select>   

<select ng-model="sellerState" ng-options="item.id as item.state_name for item in states | filter : {country_id: { id : sellerCountry}, }" ng-disabled="!sellerCountry">
    <option value="">Select State</option>
</select>

在这里,当我选择印度(其中ID = 1)从第一个选择框,我应该只得到德里在第二选择要显示,但它显示德里COUNTRY_IDID = 1)和维多利亚COUNTRY_IDID = 10)

需要帮助来解决这个问题。提前致谢。

Pankaj Parkar

默认情况下,过滤器会执行contains搜索,您应该通过true向过滤器传递第3个参数来使过滤器进行严格比较

 ng-options="item.id as item.state_name for item in states
               | filter : {country_id: { id : sellerCountry} }: true"

演示柱塞

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在angularJS中按对象属性过滤

如何在Django中按日期范围过滤查询对象?

如何在链接列表中按属性删除对象?

在AngularJS中按多个特定模型属性进行过滤(OR关系)

如何在AngularJS中按对象中的特定属性过滤?

反应-按对象属性过滤

如何在Java中按多个属性过滤列表?

如何按对象数组中的所有属性过滤?

如何在VueJS中按对象属性过滤对象数组

如何在数组中按属性查询嵌套对象?

如何在猫鼬中按减号的对象属性排序?

如何按对象数组jsonb字段中的特定属性过滤记录

如何在Typescript中按属性过滤对象类型的并集?

按属性过滤功能,该属性是Mapbox中的对象列表

如何实现角度6中的选择下拉列表(按搜索过滤),如何通过对象的名称属性过滤对象

如何在Kendo Grid(AngularJs)中过滤对象数组?

在对象数组中,如何在React中按属性返回所有对象?

如何在Angular ng-repeat中按类别键过滤数组中的对象

如何在angularjs中按值分组对象键

如何在 Django 中按价格范围过滤对象?

如何按属性过滤两个 json 对象列表?

如何在firebase中按属性过滤数据

如何在 Django 中按 BooleanField 过滤?

如何按属性过滤对象数组

如何按 Angular 数组中的属性过滤对象?

如何在 Angularfire 中按动态对象属性进行过滤

如何在JS中按对象过滤对象数组

如何在 ReactJs 中按属性过滤数量

如何在 SQL 中按日期过滤?