Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何为筛选结果选择更多复选框值?_Javascript_Angular_Api_Angular Material_Observable - Fatal编程技术网

Javascript 如何为筛选结果选择更多复选框值?

Javascript 如何为筛选结果选择更多复选框值?,javascript,angular,api,angular-material,observable,Javascript,Angular,Api,Angular Material,Observable,我有一些用于过滤的复选框。我可以选择一个或多个复选框。但例如,您将选择两个复选框,然后只有最后选中的复选框将显示来自后端的值 因此,我将其作为HTML: {{item.name} 这就是方法: returnProjectCodes: ProjectApi[] = []; filterProjects(event, index, item) { if (event.checked === true) { const hallo = this.returnProjec

我有一些用于过滤的复选框。我可以选择一个或多个复选框。但例如,您将选择两个复选框,然后只有最后选中的复选框将显示来自后端的值

因此,我将其作为HTML:


{{item.name}
这就是方法:

returnProjectCodes: ProjectApi[] = [];

filterProjects(event, index, item) {
    if (event.checked === true) {
        const hallo =  this.returnProjectCodes.push(item);
        console.log(hallo);
        this.extendedSearchFilterService.filterByProject(item.projectId).subscribe(pipe());
        this.datasource.filter = item.name;
    } else {
        this.datasource.filter = '';
    }
}
组成部分:

 export class AppComponent implements OnInit  {

  list: any[];

  ngOnInit() {
    this.list = [
      {
        id: 1,
        title: 'Администратор',
        checked: true,
      },
      {
        id: 2,
        title: 'Пользователь',
        checked: false,
      },
      {
        id: 3,
        title: 'Директор',
        checked: false,
      },
      {
        id: 4,
        title: 'Начальник',
        checked: false,
      },
    ]
  }

  get result() {
    return this.list.filter(item => item.checked);
  }
HTML:

    {{item.title}

希望这个例子能让你一瞥如何做到这一点。这不是一个很好的实现方法,但您可以通过检查检查值的长度来解决这一问题。谢谢。您能举个例子吗?您能用代码创建堆栈闪电吗?这样我们才能更新答案谢谢。我会看一看的。投赞成票,接受我的解决方案,如果它对你有效的话@nicecondertothebest
<ul>
    <li *ngFor="let item of list| slice:0:this.result.length+1; let ind=index;">
    <input type="checkbox" [(ngModel)]="item.checked">{{item.title}}
  </li>
</ul>