1

我有项目列表,我想从显示\隐藏元素的按钮创建过滤器,而不是从 DOM 中添加\删除它。

<li ng-repeat="li in list" ng-show="">
<a ng-click="">category</a>
</li>

我的意思是,我想通过此过滤器隐藏\显示列表项,而不是过滤列表。我找到了这个小提琴 http://jsfiddle.net/cKa6K/

但我只想对隐藏\显示做同样的事情。

4

1 回答 1

4

如果没有关于您的代码的更多信息,我会这样做:http: //jsfiddle.net/DotDotDot/tpmxN/1/
我使用了一个具有 2 个属性、名称和类别的项目列表
我为 ng 定义了一个函数-show,将项目类别与过滤器进行比较

 <li ng-repeat="li in list" ng-show="isDisplayed(li, filter)">

然后在控制器中,函数定义为:

 $scope.isDisplayed=function(item, filter){
 if(filter!="")
 {
     if(item.category==filter)
         return true;
     return false;
 }
    return true;
}

这没什么难的,然后你只需要设置filter属性,我使用带有 ng-click 的按钮和 ng-repeat 中的类别,你可以点击它们,它会隐藏/显示正确的项目

我希望这有帮助

玩得开心

于 2013-09-11T15:25:00.923 回答