vma*_*cek 3 angular-material angular
我想要实现的目标可以在下图中看到。
或堆叠闪电战
https://angular6-material-components-demo-etqohr.stackblitz.io/
我使用 angular material 作为 UI 框架
问题是当我点击任何地方(日、月或年)时,焦点会自动放在第一个输入上。我无法在文档中找到如何禁用此行为。
另一个问题是验证,整个字段的验证只会考虑第一个字段。感觉这不是由角材料支持的。关于如何解决这个问题的任何想法?
模板标记:
<mat-form-field class="full-width">
<mat-label>{{label}}</mat-label>
<div class="d-flex justify-content-between">
<div>
<input matInput name="day" #day="ngModel" [(ngModel)]="dateOfBirthDay" type="tel" inputmode="numeric"
autocomplete="nope" placeholder="24" required maxlength="2" (keypress)="validate($event)">
</div>
<div>
<input matInput name="month" [(ngModel)]="dateOfBirthMonth" type="tel" inputmode="numeric" autocomplete="nope"
placeholder="12" required maxlength="2" (keypress)="validate($event)">
</div>
<div>
<input matInput name="year" [(ngModel)]="dateOfBirthYear" type="tel" inputmode="numeric" autocomplete="nope"
[placeholder]="placeholderYear" required maxlength="4" (keypress)="validate($event)">
</div>
</div>
<mat-error>
{{_errorMessage}}
</mat-error>
</mat-form-field>
Run Code Online (Sandbox Code Playgroud)
小智 5
为了更改角度材质组件的默认行为,最佳实践是扩展它并创建您自己的自定义类。
对于mat-form-field组件,Angular Material 的网站中有一个指南,它非常接近您想要做的事情。我建议你检查一下,这是链接;
https://material.angular.io/guide/creating-a-custom-form-field-control
链接中的示例还将输入分为 3 部分,您可以关注其中的任何部分。
| 归档时间: |
|
| 查看次数: |
2304 次 |
| 最近记录: |