Javascript 使用AngularJS中的复选框按多个条件筛选数据

Javascript 使用AngularJS中的复选框按多个条件筛选数据,javascript,html,angularjs,json,Javascript,Html,Angularjs,Json,我是AngularJS的新手,我一直在寻找一个过滤函数,基本上过滤我工作的公司即将发生的事件列表。我想知道是否有一种方法可以根据多个复选框过滤数据 我基本上需要将其设置为有3个复选框: 标题事件 喜剧事件 自由活动 如果选择喜剧事件,则显示喜剧事件。如果选择了标题事件,则显示标题事件。如果选择了自由事件,则显示自由事件。或者,如果选择了标题和喜剧,则同时显示两者 我只是没能让任何东西正常工作 在JSON文件中,事件类型的组织方式如下: "entertainment_type_is_h

我是AngularJS的新手,我一直在寻找一个过滤函数,基本上过滤我工作的公司即将发生的事件列表。我想知道是否有一种方法可以根据多个复选框过滤数据

我基本上需要将其设置为有3个复选框:

  • 标题事件
  • 喜剧事件
  • 自由活动
如果选择喜剧事件,则显示喜剧事件。如果选择了标题事件,则显示标题事件。如果选择了自由事件,则显示自由事件。或者,如果选择了标题和喜剧,则同时显示两者

我只是没能让任何东西正常工作

在JSON文件中,事件类型的组织方式如下:

    "entertainment_type_is_headline": "0",
    "entertainment_type_is_free": "1",
    "entertainment_type_is_comedy": "0",
以下是数据文件的链接:

我想事情是这样的。。。如果事件具有娱乐类型,则显示娱乐类型为的所有事件。。。但我就是不能把我的头绕在它周围


我看到过非常小的简单示例和非常复杂的大型示例,但对我来说似乎没有任何效果。

我可以想出两种解决方案

1) 将对象传递给过滤器表达式

<input type="checkbox" ng-model="filter. entertainment_type_is_headline"
       ng-true-value="1" ng-false-value="0">
<input type="checkbox" ng-model="filter.entertainment_type_is_free"
       ng-true-value="1" ng-false-value="0">
<input type="checkbox" ng-model="filter.entertainment_type_is_comedy"
       ng-true-value="1" ng-false-value="0">
<div ng-repeat="event in events | filter:{entertainment_type_is_headline: filter.entertainment_type_is_headline, entertainment_type_is_free: filter.entertainment_type_is_free,entertainment_type_is_comedy: filter.entertainment_type_is_comedy }"></div>
html



您是否可以创建一个工作示例,以便我知道如何将其集成到我的代码中?这是一个了不起的示例。非常感谢你!
$scope.filterEvent = function(row){
    if(row.entertainment_type_is_headline.indexOf($scope.filter.entertainment_type_is_headline) >= 0 && ...)
        return true;
    else 
        return false;

} 
<div ng-repeat="event in events | filter: filterEvent"></div>