使用单选按钮的AngularJS过滤器

问题描述 投票:0回答:1

我想使用自定义过滤器或默认的Angular过滤器过滤数据,但问题是单选按钮,第一次点击给出数据,下一次点击给出数据,但包括以前的数据,我需要取消勾选第一次点击并点击下一个按钮来获得数据。

<div ng-app="myApp" ng-controller="OrderController" ng-init="GetOrders()">
<div ng-repeat="x in List"><input type="radio" name="rdnStatus" ng-model="OrderStatus" ng-click="FilterOrder(status)" /></div>

<Input ng-repeat="x in List" type="text" value="{{x.Product}}-{{x.Amount}}">
</div>

var app = angular.module("myApp",[]);
app.controller("OrderConroller",function($scope,$http){

$scope.GetOrders = function(){
Response.Data - http/GET 
url : ../GetOrders/
};

[{ OrderId : 1 ,
   OrderData : 2020-05-12 ,
   OrderStatus : Accepted ,
   Amount : 1000 ,
   Product : Apple ,
  },
{ OrderId : 2,
   OrderData : 2020-05-12 ,
   OrderStatus : Rejected,
   Amount : 2000 ,
   Product : Apple ,
  },
{ OrderId : 3,
   OrderData : 2020-05-12 ,
   OrderStatus : Accepted ,
   Amount : 3000 ,
   Product : Apple ,
  },
{ OrderId : 4 ,
   OrderData : 2020-05-12 ,
   OrderStatus : Accepted ,
   Amount : 4000 ,
   Product : Apple ,
  },
{ OrderId : 5 ,
   OrderData : 2020-05-12 ,
   OrderStatus : Rejected,
   Amount : 5000 ,
   Product : Apple ,
  },
{ OrderId : 6 ,
   OrderData : 2020-05-12 ,
   OrderStatus : Accepted ,
   Amount : 6000 ,
   Product : Apple ,
  },
{ OrderId : 7 ,
   OrderData : 2020-05-12 ,
   OrderStatus : Accepted ,
   Amount : 7000 ,
   Product : Apple ,
  },
{ OrderId : 8 ,
   OrderData : 2020-05-12 ,
   OrderStatus : Rejected,
   Amount :8000 ,
   Product : Apple ,
  },
{ OrderId : 9,
   OrderData : 2020-05-12 ,
   OrderStatus : Accepted ,
   Amount : 9000 ,
   Product : Apple ,
  },
{ OrderId : 10 ,
   OrderData : 2020-05-12 ,
   OrderStatus : Accepted ,
   Amount : 10000 ,
   Product : Apple ,
  }]

});


我想使用自定义过滤器或默认的Angular过滤器过滤数据,但问题是单选按钮1st Click gives data, Next click gives data but includes previous data, I need to uncheck 1st Click and Click next button to get Data.

是否有一种方法,我可以实现这个功能.请帮忙

angularjs filter radio-button
1个回答
1
投票

如你所说,你可以使用默认的Angular过滤器,你可以过滤你想要的属性。

<div ng-init="FilterValue = 'Rejected'">
  <div ng-repeat="x in data | filter:{OrderStatus:FilterValue}">
      <Input  type="text" value="{{x.Product}}-{{x.Amount}}">
  </div>
</div>

你可以在这里找到更多关于angularjs过滤器的详细信息。文件

© www.soinside.com 2019 - 2024. All rights reserved.