【问题标题】:How to select all checkboxes but unselect a particular checkbox?如何选择所有复选框但取消选择特定复选框?
【发布时间】:2019-01-24 07:28:46
【问题描述】:

我正在创建一个复选框列表并创建另一个复选框,当我单击该复选框时,所有列出的复选框都被选中,但是当我取消选择一个复选框时,所有复选框都未选中。这是我的代码:

    <input type="checkbox" class="custom-control-input" (change)="inviteAll()" [(ngModel)]="checked">
    <ul>
    <li class="peopleselectlist-item" *ngFor="let connection of connections">
        <img *ngIf="connection.imageUrl === '' || connection.imageUrl === null" src="assets/images/default_user.png" alt="" class="connection-img">
        <img *ngIf="connection.imageUrl !== '' && connection.imageUrl !== null" src="{{connection.imageUrl}}" alt="" class="connection-img">
         <h5>{{connection.firstName}}</h5>
         <label class="custom-control custom-checkbox">
  <input type="checkbox" class="custom-control-input" value="{{connection.userId}}" (change)="tagUser(connection.userId)" [(ngModel)]="checked">
  <span class="custom-control-indicator"></span></label> </li> <ul>

如何解决这个问题。当我取消选中复选框时,仅取消选中该复选框。

【问题讨论】:

  • [(ngModel)]="checked" 两个 ngModel 都没有,这就是为什么所有都没有选中,也发布你的tagUser() 方法
  • tagUser 可能不相关。 [(ngModel)]="checked"... @Santu 您已经正确了,您将所有复选框映射到同一个变量,因此当您将其更新为“false”时,所有复选框都未选中

标签: javascript angular6


【解决方案1】:

尝试为唯一性添加索引值。像这样:

*ngFor="let connection of connections;let i = index"

并将 [(ngModel)]="checked" 更改为 [(ngModel)]="checked[i]" 并创建已签入 ts/js 文件的数组。也尝试在复选框字段中id={{i}}

【讨论】:

    猜你喜欢
    • 2011-10-09
    • 1970-01-01
    • 2023-04-04
    • 2021-03-22
    • 1970-01-01
    • 2015-11-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多