現在、角度2のフォームに検証を追加しようとしていますが、何らかの理由で、必須フィールドが入力されていないときに送信ボタンを無効にすることができません。 私のフォームテンプレートのコードを次に示します:Angular2テンプレートベースフォームの検証が機能しません
<h1 md-dialog-title>{{title}}</h1>
<form #formCtrl="ngForm">
<md-dialog-content>
<md-input-container>
<input #name md-input placeholder="Name" value="" name="name" focused required>
</md-input-container>
<br />
<md-select #inputtype placeholder="Input type" name="inputtype">
<md-option *ngFor="let inputtype of inputtypes" [value]="inputtype.id">
{{inputtype.name}}
</md-option>
</md-select>
</md-dialog-content>
<md-dialog-actions>
<button type="submit" md-raised-button color="primary" [disabled]="!formCtrl.form.valid">Create</button>
</md-dialog-actions>
</form>
いくつかの例によると、このボタンは決して無効になりません。私も "!formCtrl.valid"を試してみました。 私は非物質的なデザインの入力フィールドを使用しようとしましたが、これは問題ではないかと考えていますが、それでも動作しません。
私はその後、私のアプリケーションに次の簡単な例を貼り付け/コピーを試みたが、でもそれがすべてでは動作しません。 http://blog.angular-university.io/introduction-to-angular-2-forms-template-driven-vs-model-driven/
任意のアイデアを正しく動作することを防ぐかもしれないものへと?
あなたはname属性の値に基づいて、フォームの値を結合する、ngModel
を追加する必要があります:あなたは、最終的な2角度よりも新しいリリースを使用していると仮定すると、
私は間違っているかもしれませんが、値属性を使わずに試しましたか? '' – mickdev