* ngFor中的角度复选框

狂热

我在Angular7中使用KendoUI,并试图获取具有绑定检查状态的复选框的动态列表。这是此列表的基本html:

  <div *ngFor="let option of RoleOptions">
    <input type="checkbox" class="k-checkbox" [(ngModel)]="option.Selected" style="width: auto">
    <label class="dialogLabels k-checkbox-label">{{option.Role.Name}}</label>
  </div>

这显示得很好,我得到了带有标签中各种名称的复选框的堆叠列表,但是我什么也无法检查。我也有一些逻辑可以预先检查某些逻辑,我可以随意设置它,它可以在出现时正确反映框的检查状态,但仍然不允许我更改它。

我上面还有这条线:

<input type="checkbox" class="k-checkbox" [(ngModel)]="NewUserSendEmail" id="cbEmail" style="width: auto">
<label class="dialogLabels k-checkbox-label" for="cbEmail"> Email login data to the user</label>

效果很好,让我绑定,然后让我检查,等等。我只能看到2个差异。

首先,ngfor中没有与标签相关联的ID或其他任何可查找的内容。但是,我没有找到需要ID的任何内容,并且Kendo页面上有很多示例显示了没有ID的复选框的示例,因此我不认为这是问题所在(但肯定是错误的)。

其次,它们在ngFor循环中。我不知道为什么会把它弄乱,但这就是我能想到的。我在Google上四处搜寻,但在这里找不到任何问题或解决方法。

有什么想法我要去哪里或者没看到什么吗?我确实记录了它绑定到的对象,并且值是true / false(不是null或未定义),所以这不应该成为问题。不知道还有什么地方...

编辑

经过更多研究,这肯定与剑道风格有关。如果我这样做:

    <div *ngFor="let option of RoleOptions">
      <label class="dialogLabels">
        <input type="checkbox" [(ngModel)]="option.Selected" style="width: auto">
        {{option.Role.Name}}</label>
    </div>

它可以工作,但显然没有剑道外观。如何获得与应用程序其余部分外观相同的复选框的动态列表?

狂热

好的,所以我仍然不确定为什么这不能像我以前那样工作。无论我做了什么(甚至是复制样式),它似乎都没有响应点击并更改检查状态。但是,在Telerik / Progress的帮助下,我发现了另一种可行的方法。

处于* ngfor之外且正在使用的复选框使用id属性和标签的'for'属性进行关联。我最初没有看到对动态生成的对象执行此操作的方法,因为id不能是静态的,或者您有一堆具有相同id的项目。我确实尝试过使用{{}}出价来使ID唯一,但这没有用。但是我发现有一个[id]绑定可以正常工作。然后,我找到了标签的[htmlFor]绑定。结合使用这些似乎正常工作。

所以我的最终代码是:

<div *ngFor="let option of RoleOptions">
    <input type="checkbox" class="k-checkbox" [(ngModel)]="option.Selected" style="width: auto" [id]="option.Role.Id">
    <label class="dialogLabels k-checkbox-label" [htmlFor]="option.Role.Id">{{option.Role.Name}}</label>
</div>

希望它可以帮助其他人。如果有人对为什么第一个系统不工作有任何其他想法,我很想知道...

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

数组中对象的角度复选框

来自分类Dev

在 *ngfor 复选框列表中定位一个复选框

来自分类Dev

角度复选框值

来自分类Dev

数据中的角度复选框和取消复选框

来自分类Dev

禁用角度指令模板中的复选框

来自分类Dev

在Jasmin中测试一个角度复选框

来自分类Dev

文本角度中的复选框未保存

来自分类Dev

使用角度材料在angular5中选择所有复选框并单选复选框

来自分类Dev

角度复选框,然后单击

来自分类Dev

模型的角度复选框为数组

来自分类Dev

树状视图中的角度复选框

来自分类Dev

角度复选框不响应

来自分类Dev

到BehaviorSubject的角度绑定复选框

来自分类Dev

使用Jasmin测试角度复选框

来自分类Dev

角度问题中的复选框

来自分类Dev

与选择和复选框角度的关系

来自分类Dev

角度2复选框绑定错误

来自分类Dev

角度 2 多复选框预选

来自分类Dev

绑定复选框角度与输入

来自分类Dev

用于过滤数据的角度复选框

来自分类Dev

表格中的复选框

来自分类Dev

JavaScript中的复选框

来自分类Dev

LotusScript中的复选框

来自分类Dev

JS中的复选框

来自分类Dev

在ngFor Angular 2中的输入类型复选框上设置检查状态

来自分类Dev

在ngFor Angular 2中的输入类型复选框上设置检查状态

来自分类Dev

使用ngFor实现复选框时,如何使复选框垂直显示而不是水平显示?

来自分类Dev

从角度2打字稿中的复选框中获取价值

来自分类Dev

如何绑定模态中的复选框以填充角度的表单字段