File

src/lib/dynamic-form-input/dynamic-form-select/dynamic-form-select.component.ts

Extends

DynamicFormInputBase

Metadata

Constructor

constructor(validationService: DynamicFormValidationService)
Parameters :
Name Type Optional
validationService DynamicFormValidationService No
import { Component } from '@angular/core';
import { DynamicFormInputBase, DynamicFormSelect, DynamicFormValidationService } from '@dynamic-forms/core';

@Component({
  selector: 'bs-dynamic-form-select',
  templateUrl: './dynamic-form-select.component.html',
})
export class BsDynamicFormSelectComponent extends DynamicFormInputBase<DynamicFormSelect> {
  constructor(protected override validationService: DynamicFormValidationService) {
    super(validationService);
  }
}
<ng-container *ngIf="!input.multiple; else optionsMultiple">
  <select class="form-select" [id]="inputId" [required]="validation?.required" [formControl]="control">
    <option [value]="null" hidden>{{ input.placeholder }}</option>
    <ng-container *ngFor="let option of input.options">
      <ng-container *ngIf="!option.items; else optionGroup">
        <option [value]="option.value" [disabled]="option.disabled">{{ option.label }}</option>
      </ng-container>
      <ng-template #optionGroup>
        <optgroup [label]="option.label" [disabled]="option.disabled">
          <option *ngFor="let optionItem of option.items" [value]="optionItem.value" [disabled]="optionItem.disabled">{{
            optionItem.label
          }}</option>
        </optgroup>
      </ng-template>
    </ng-container>
  </select>
</ng-container>

<ng-template #optionsMultiple>
  <select class="form-select" [id]="inputId" [required]="validation?.required" [formControl]="control" multiple>
    <ng-container *ngFor="let option of input.options">
      <ng-container *ngIf="!option.items; else optionGroup">
        <option [value]="option.value" [disabled]="option.disabled">{{ option.label }}</option>
      </ng-container>
      <ng-template #optionGroup>
        <optgroup [label]="option.label" [disabled]="option.disabled">
          <option *ngFor="let optionItem of option.items" [value]="optionItem.value" [disabled]="optionItem.disabled">{{
            optionItem.label
          }}</option>
        </optgroup>
      </ng-template>
    </ng-container>
  </select>
</ng-template>

results matching ""

    No results matching ""