我需要帮助才能在检查复选框时启用行。应禁用默认行,但仅在选中该复选框时,将启用该行。这是我的代码链接
const responseData = JSON.parse(response.json())
答案 0 :(得分:4)
看一下Demo& SRC
说明:
[attr.disabled]="myForm.get('rows').value[i].checkbox_value ? null: ''"
attr.disabled
,此处attr用于绑定不直接存在于元素上的属性myForm.get('rows').value[i].checkbox_value
,可以直接访问表单控件的值。答案 1 :(得分:2)
另一个方法是创建一个指令
@Directive({
selector: '[enabledControl]'
})
export class EnabledControlDirective {
@Input() set enabledControl(condition: boolean) {
if (this.ngControl) {
if (this.ngControl.control) {
if (condition)
this.ngControl.control.enable();
else
this.ngControl.control.disable();
}
}
}
constructor(private ngControl : NgControl ) {
}
}
然后你就可以使用
了<input class="col-md-6" formControlName="quantity"
[enabledControl]="row.get('checkbox_value').value" >