小编Sté*_*ane的帖子

AngularJS复选框过滤器

我想过滤结果.

有一个葡萄酒列表,我的愿望是当没有选中复选框时,会显示整个葡萄酒列表.

  • 当仅选中1个复选框时,将显示相关类别
  • 如果选中多个复选框,则会显示相关类别

我是AngularJS的新手,我尝试使用ng-model并没有成功,这里是没有与该函数关联的ng-model的代码:

<html ng-app="exampleApp">
<head>
    <title></title>
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.0-beta.10/angular.min.js"></script>

    <script>
        angular.module("exampleApp", [])
                .controller("defaultCtrl", function ($scope) {
                    $scope.wines = [
                        { name: "Wine A", category: "red" },
                        { name: "Wine B", category: "red" },
                        { name: "wine C", category: "white" },
                        { name: "Wine D", category: "red" },
                        { name: "Wine E", category: "red" },
                        { name: "wine F", category: "white" },
                        { name: "wine G", category: "champagne"},
                        { name: "wine H", category: "champagne" }

                    ];


                    $scope.selectItems = function …
Run Code Online (Sandbox Code Playgroud)

checkbox angularjs angularjs-directive angular-ngmodel angular-filters

18
推荐指数
1
解决办法
3万
查看次数

如何动态禁用ng-repeat内的过滤器

可以使用复选框删除过滤器吗?

如果选中复选框,则将禁用ng-repeat内的过滤器.例如,如果复选框countryfilterwinetypefilter被选中,相关的过滤器将被禁用.

原始代码(已启用过滤器)

<li ng-repeat="wine in wines | winetypefilter:winetypes| countryfilter:countrytypes | stylefilter:styletypes">
                {{wine.name}} is a {{wine.type}} with {{wine.style}} style from {{wine.country}}
</li>
Run Code Online (Sandbox Code Playgroud)

(过滤器与复选框,禁用countryfilterwinetypefilter会导致):

<li ng-repeat="wine in wines | stylefilter:styletypes">
            {{wine.name}} is a {{wine.type}} with {{wine.style}} style from {{wine.country}}
</li>
Run Code Online (Sandbox Code Playgroud)

checkbox filter angularjs angularjs-ng-repeat

4
推荐指数
1
解决办法
5966
查看次数