如何以角度

时间:2018-03-28 11:50:37

标签: angular typescript angular-forms

我在角度5

中创建了一个模板驱动的表单

我想首先禁用整个表单,并且还希望在单击某个按钮后启用该表单,因此我在表单标记中添加了一个禁用的属性,并使其值为false,如下所示,(这不是&虽然工作得很好:

<form #formName = "ngForm" [disabled]="true">
</form>

由于上述禁用的属性不起作用,我将禁用的属性更改为

[attr.disabled] = true

这也没有用

现在因为我有表单元素的引用#formName,我在TS文件中使用它并尝试更改引用对象内的disabled属性值

这就是我所做的:

@ViewChild('formName') formName;


this.formName.disabled = true; 

这也没有用,我收到一条错误消息,说无法更改已禁用,因为它只是一个吸气剂

默认情况下,如何在模板驱动表单的角度中禁用整个表单?

提前致谢:)

1 个答案:

答案 0 :(得分:10)

如评论中所述,您可以将表单包装在fieldset标记内,并按照以下方式实现此目的,

<form #formName = "ngForm" >
    <fieldset [disabled]="disabledValue">
</form>

您可以通过使用局部变量在代码中更改它,并在禁用/启用状态之间切换为

this.disabledValue = true;