Angular Material 2 md-select 要求不处理表单提交

Angular Material 2 md-select required not working on form submit

我创建了一个带有文本框和下拉菜单的简单表单。两者都是必需的。

当我点击提交按钮时,文本框变为红色,而下拉列表没有变化。

这里是笨蛋: https://embed.plnkr.co/oSe3JCMlB4jBNsjOgUoc/

我希望当用户单击提交按钮时两个字段都变成红色。

我想念什么?

你有

'test1': new FormControl("", Validators.required)

在您的代码 (select-form-example.ts) 中,它告诉 angular 它是必填字段,因此红框表示验证失败。尝试

'test1': new FormControl("")

我认为这是因为 required 验证器会检查 FormControl 是否为 touched

您可以按照

中的说明手动执行此操作
submit(form) {
    this.form.get('test2').markAsTouched()
    console.log(form)
}

最好使用 (ngSubmit) 而不是提交按钮上的点击事件。

Live plunker example