【问题标题】:Change disabled attribute value for matInput更改 matInput 的禁用属性值
【发布时间】:2018-09-10 08:26:43
【问题描述】:
我有一个与现有问题相关的问题
无法使用 this 禁用 matInput 元素
建议的答案很好用:
ngOnInit() {
this.form = this.fb.group({
name: new FormControl({ value: '', disabled: this.disabled })
});
但是当我将 this.disabled 值更改为 true - disabled 属性不会更改。有没有办法更改 matInput 的 disabled 属性?
【问题讨论】:
标签:
angular-material
angular6
angular-material2
metronic
【解决方案1】:
您不能使用该表单,因为当您创建 FormControl 时,您传递的是该值,在您的情况下是 this.disabled 的值。你没有绑定属性,你只是传递一个值来做一些检查,这个值没有反映输入属性的变化。
您无法通过这种方式实现目标,您需要手动启用和禁用输入,如下所示:
let control = this.form.get('name')
control.disabled ? control.enable() : control.disable();
显然,您可以将其直接放入模板中的点击事件中,如下所示:
<button (click)="this.form.get('name').enable()">Enable</button>