【问题标题】:mat-checkbox - how to get value from disabled checkboxmat-checkbox - 如何从禁用的复选框中获取值
【发布时间】:2019-12-05 17:34:07
【问题描述】:

我需要帮助来获取禁用复选框的值。我有两个级别的用户,所以对于管理员来说,复选框应该可用,而对于普通用户来说应该是禁用的。我已经解决了这种情况,但是当普通用户提交表单时出现问题,因为“isActive”的值未定义。那是因为它被禁用了...经过一番谷歌搜索后,我尝试添加另一个隐藏的输入,但这也不起作用...我尝试了几件事,但都没有工作。

    <mat-checkbox class="mr-3" color="primary" [checked]="user.isActive" name="isActive" [ngModel]="user.isActive" [disabled]="!isAdmin">
        Active
    </mat-checkbox>

    <mat-checkbox hidden="true" name="isActive" [(ngModel)]="user.isActive"></mat-checkbox>

【问题讨论】:

  • 如果你使用模板驱动表单,那是多余的,对我来说,在我的 stackbliz stackblitz.com/edit/angular-hcehzg?file=src/app/… 中工作,如果使用 ReactiveForm 使用 getRawValue(),请参阅 angular.io/api/forms/FormGroup#getRawValue BTW,如果使用 ngForm,请尝试 myForm.form.getRawValue()
  • @Eliseo,谢谢,getRawValue() 正在工作,但我在表单中还有 10 个输入字段,我需要将所有这些值作为 JSON 发布到我的后端。我的后端函数有 frombody 属性。

标签: angular checkbox angular-material


【解决方案1】:

为什么不在将表单数据发送到后端时以编程方式设置该复选框的值,这只是一种简单的技术,如果禁用值然后在发送信息时创建一个检查,然后您可以添加您的表单中的所需值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多