我正在尝试围绕2个输入框和一个按钮创建一些简单的表单验证。当这些输入框为空(原始)时,我希望禁用该按钮。当任一框都有值时,我希望按钮能够提交。当前,当第一次渲染输入字段时,原始属性为true。在框中进行更改后,将其设置为false,但是在删除更改后,我希望将其恢复为false,但是Angular似乎没有重置此验证?
答案 0 :(得分:4)
Pristine并不表示“空”,它表示“自从以这种形式显示该值以来,用户尚未更改它”。改用字段的value
属性,例如
<button [disabled]="!myField1.value?.length && !myField2.value?.length">
https://angular.io/guide/forms
但这是一个快捷方式,如果您想输入两个必需的输入(并且在表单无效时仅禁用提交),请查看此线程: