迁移到 angular 4 后,我的模板驱动表单出现了一个奇怪的问题。我输入的 required attr 似乎坏了。我想默认情况下有 novalidate 属性。但我需要一些 html5 验证。尝试了 novalidate="false" 但没有成功。
有什么方法可以启用验证吗?现在似乎使用带有 Validators.required 的 react 形式是唯一的方法。

谢谢!

我的 HTML 组件代码片段:

<form (submit)="savePhone(phone);" novalidate="false">
<h3>Новый телефон</h3>
<md-input-container>
    <input mdInput placeholder="Номер телефона"
           onlyNumber="true" name="number"
           [(ngModel)]="phone.number" required>
</md-input-container>
<md-select placeholder="Источник получения" (ngModel)="phone.source" name="source">
    <md-option *ngFor="let source of sources" [value]="source">
        {{ source }}
    </md-option>
</md-select>
<textarea name="comment" placeholder="Текст комментария"
          [(ngModel)]="phone.comment" name="comment">
</textarea>
<div layout="row" layout-align="end">
    <button class="button button--success" type="submit">
        Добавить
    </button>
</div>

最佳答案

启用 HTML5 验证使用

<form (submit)="savePhone(phone);" ngNativeValidate>

另见 NgNoValidate source at GitHub

关于javascript - angular 4.0.0 novalidate 属性,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43274571/

10-13 04:49