最初に条件を指定すると、私の条件が機能しないのはなぜですか?AngularJS。 ng-repeatのフィルターの複数の条件
- は、私がpricetoが100を置く=>私はすべての項目を、取得する場所価格> 100
- 私は名前=>何で「アプリケーション」に変更置く しかし、私はアイテムを取得する必要があり(価格> 100) AND(名前には「App」が含まれています)。
フィドル:http://jsfiddle.net/QHtD8/142/
JS:
var myApp = angular.module('myApp', []);
function MyCtrl($scope) {
$scope.products = [
{name:"Apple",type:"fruit",price:100},
{name:"Grape",type:"fruit",price:500},
{name:"Orage",type:"fruit",price:555},
{name:"Carrot",type:"vegetable",price:1000},
{name:"Milk",type:"dairy",price:800}
];
$scope.productFilter = function (item) {1
var result = item.name === $scope.foodName ||
item.price >= $scope.priceFrom ||
item.price <= $scope.priceTo;
return result;
};
}
はHTML:
<div ng-controller="MyCtrl">
Name
<input ng-model="foodName" /><br>
Price from
<input ng-model="priceFrom" /><br>
Price to
<input ng-model="priceTo" /><br>
<ul>
<li ng-repeat="item in products | filter:productFilter">
{{item.name}} - {{item.price}}
</li>
</ul>
</div>
のですか?フィドルはうまく動作するようです。 – k102
サンプルイメージのようです。価格を100にすると、すべてのアイテム(価格> 100)を取得した後、名前に「App」を入れて何も変更しません。しかし、Name> "App"が含まれているprice> 100 ANDの項目を取得する必要があります。 –