如何隐藏\显示角度js中按钮的列表项

时间:2013-09-11 14:58:13

标签: angularjs

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

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

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

但我想只用hide \ show。

做同样的事情

1 个答案:

答案 0 :(得分: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中的类别,你可以点击它们,它会隐藏/显示适当的项目

我希望这会有所帮助

玩得开心