Установить элемент управления формы, удерживающий множественный выбор в мат, выберите значение null
Выбор сопряжения имеет функцию множественного выбора. Как установить нулевое значение элемента управления формы, которое удерживает этот множественный выбор ... Здесь, в моем случае, это не работает ...
reset(){
this.form.reset();
return false
}
this.form = this.formBuilder.group({
category: [''],
});
В шаблоне
<mat-form-field appearance="outline">
<mat-label>Categories</mat-label>
<mat-select formControlName="category" multiple>
<mat-select-trigger>
<mat-icon matPrefix *ngIf="f['category'].value" (click)="clearCategory($event)"
class="icon" title="clear">clear</mat-icon>
{{f['category'].value ? f['category'].value[0] : ''}}
<span *ngIf="f['category'].value?.length > 1" class="example-additional-selection">
(+{{f['category'].value.length - 1}} {{f['category'].value?.length === 2 ? 'other' : 'others'}})
</span>
</mat-select-trigger>
<mat-option #allSelectedCategories (click)="toggleAllCategories()" [value]="0" >
All Categories (default)
</mat-option>
<mat-option *ngFor="let category of categories"
(click)="toggleOnCategory(allSelectedCategories.viewValue)"
[value]="category">{{category}}</mat-option>
</mat-select>
</mat-form-field>
при нажатии кнопки сброса значения категории не очищаются из значения формы, а только из поля ввода
<button type="reset" mat-raised-button (click)="reset()"
style="margin-right: 5px;">
Reset
</button>
2 ответа
.reset()
не удаляет значения из элементов управления формы. Он сбрасывает значения элементов управления до тех, которые были до внесения изменений . Это работает одинаково в Angular (во всех вариациях, например
FormControl.reset()
,
NgForm.resetForm()
и т. д.) и на чистом JavaScript.
Вы хотите, чтобы кнопка снимала все флажки с множественным выбором? Другими словами, пользователь проверяет несколько, а вы хотите сбросить их, чтобы они не проверялись?
Попробуй это:
selectedOptions = [];