使 mat-radio-button 成为表单中的必填字段
Make mat-radio-button a required field in a form
我正在使用 Angular 6 中的表单,在这种情况下我禁用了提交按钮:
<button tabindex="-1" mat-raised-button class="submit-btn" color="primary" type="submit" [disabled]="!EditItemForm.form.valid || !quantityIsValid(newQuantity.value)">Save</button>
我在 mat-radio-group
中有 2 个 mat-radio-button
字段,如果 none 的单选按钮被 select 编辑,我想禁用提交按钮。
这是我尝试过的:
<form #EditItemForm="ngForm" (ngSubmit)="save(newQuantity.value)">
<mat-radio-group>
<mat-radio-button (click)="setType('Consumable')" value="1" #consumable name="consumable" required>Consumable</mat-radio-button>
<mat-radio-button (click)="setType('Returnable')" value="2" #returnable name="returnable" required>Returnable</mat-radio-button>
</mat-radio-group>
<mat-form-field>
<input matInput [ngModel]="data.quantity" name="newQuantity" #newQuantity placeholder="Quantity"
type="number" required>
</mat-form-field>
<mat-dialog-actions>
<button tabindex="-1" mat-raised-button [mat-dialog-close]="false">Cancel</button>
<button tabindex="-1" mat-raised-button class="submit-btn" color="primary" type="submit" [disabled]="!EditItemForm.form.valid || !quantityIsValid(newQuantity.value)">Save</button>
</mat-dialog-actions>
</form>
所以我制作了必需的 mat-radio-buttons,我也尝试制作了必需的 mat-radio-group,但两者都不起作用。
但是,如果我没有 select 单选按钮,而我输入了一个数量,则该表单将显示为有效,并且会启用提交按钮。但是,我不希望在没有单选按钮时启用提交按钮 selected 那么我该怎么做呢?
谢谢
您必须将 ngModel
和 name
添加到您的 mat-radio-group
。 Als 使组成为必需的,而不是 mat-radio-buttons
:
<form #EditItemForm="ngForm" (ngSubmit)="save(1)">
<mat-radio-group required [ngModel]="selectedRadio" name="radio">
<mat-radio-button (click)="setType('Consumable')" value="1">Consumable</mat-radio-button>
<mat-radio-button (click)="setType('Returnable')" value="2">Returnable</mat-radio-button>
</mat-radio-group>
<button tabindex="-1" mat-raised-button class="submit-btn" color="primary" type="submit" [disabled]="!EditItemForm.valid">Save</button>
</form>
<p>Form valid: {{ EditItemForm.valid }}</p>
为了简单起见,我排除了 quantity
控件。 selectedRadio
只是一个字符串
我正在使用 Angular 6 中的表单,在这种情况下我禁用了提交按钮:
<button tabindex="-1" mat-raised-button class="submit-btn" color="primary" type="submit" [disabled]="!EditItemForm.form.valid || !quantityIsValid(newQuantity.value)">Save</button>
我在 mat-radio-group
中有 2 个 mat-radio-button
字段,如果 none 的单选按钮被 select 编辑,我想禁用提交按钮。
这是我尝试过的:
<form #EditItemForm="ngForm" (ngSubmit)="save(newQuantity.value)">
<mat-radio-group>
<mat-radio-button (click)="setType('Consumable')" value="1" #consumable name="consumable" required>Consumable</mat-radio-button>
<mat-radio-button (click)="setType('Returnable')" value="2" #returnable name="returnable" required>Returnable</mat-radio-button>
</mat-radio-group>
<mat-form-field>
<input matInput [ngModel]="data.quantity" name="newQuantity" #newQuantity placeholder="Quantity"
type="number" required>
</mat-form-field>
<mat-dialog-actions>
<button tabindex="-1" mat-raised-button [mat-dialog-close]="false">Cancel</button>
<button tabindex="-1" mat-raised-button class="submit-btn" color="primary" type="submit" [disabled]="!EditItemForm.form.valid || !quantityIsValid(newQuantity.value)">Save</button>
</mat-dialog-actions>
</form>
所以我制作了必需的 mat-radio-buttons,我也尝试制作了必需的 mat-radio-group,但两者都不起作用。
但是,如果我没有 select 单选按钮,而我输入了一个数量,则该表单将显示为有效,并且会启用提交按钮。但是,我不希望在没有单选按钮时启用提交按钮 selected 那么我该怎么做呢?
谢谢
您必须将 ngModel
和 name
添加到您的 mat-radio-group
。 Als 使组成为必需的,而不是 mat-radio-buttons
:
<form #EditItemForm="ngForm" (ngSubmit)="save(1)">
<mat-radio-group required [ngModel]="selectedRadio" name="radio">
<mat-radio-button (click)="setType('Consumable')" value="1">Consumable</mat-radio-button>
<mat-radio-button (click)="setType('Returnable')" value="2">Returnable</mat-radio-button>
</mat-radio-group>
<button tabindex="-1" mat-raised-button class="submit-btn" color="primary" type="submit" [disabled]="!EditItemForm.valid">Save</button>
</form>
<p>Form valid: {{ EditItemForm.valid }}</p>
为了简单起见,我排除了 quantity
控件。 selectedRadio
只是一个字符串