1
$scope
の内部にオブジェクトの配列があります。オブジェクトにはname
があり、属性のプロパティにはattributes
があります。私は、name
またはnoOfCitizens
のいずれかに基づいて状態をフィルタリングするために使用されるモデルにバインドする必要があるテキストフィールドを持っています。ただし、以下のコードはアイテムをフィルタリングしていません。私が間違っているところ。私はAngularjs 1.5.8バージョン配列内のオブジェクトプロパティの角度フィルタ
//Inside the controller
$scope.states=[];
var mp = {};
mp.name = "MP";
mp.attributes= {
"name":"MP",
"noOfCitizens":"~ 900000"
};
var ts = {};
ts.name = "TS";
ts.attributes= {
"name":"TS",
"noOfCitizens":"~ 8000"
};
$scope.states.push(mp);
$scope.states.push(ts);
<!-- Inside my html page -->
<div style="margin-left: 10px">
<input type="text" ng-model="state.attributes['name']" placeholder="filter">
</div>
<div class="col-lg-3" ng-repeat="state in states | filter:state.attributes['name']">
<h2>{{state.name}}</h2>
<ul>
<li>Name: {{state.attributes['name']}}</li>
<li>No Of Citizens: {{state.attributes['noOfCitizens']}}</li>
</ul>
</div>