web-dev-qa-db-fra.com

Donnez un espace réservé à sélectionner dans Angular 6

J'ai une option de sélection dans laquelle je veux donner un espace réservé qui dit "sélectionner une catégorie"

<form role="form" class="form form-horizontal" (ngSubmit)="onSubmit()" #form="ngForm" ngNativeValidate>
        <div class="form-group row">
            <div class="col-xl-4 col-lg-6 col-md-12">
                <fieldset class="form-group">
                    <label for="customSelect">Categories:</label>
                    <select class="custom-select d-block w-100" id="Category" [(ngModel)]="Category" name="Category" required>
                        <option value=" ">Select one category </option>                                     
                         <option *ngFor="let item of myBusinessList" [value]="item.id">{{item.name}}</option>
                    </select>
                </fieldset>                                
            </div>
        </div>
        <button type="submit" class="btn btn-raised btn-danger">Save</button>
    </form>

Si je supprime [ngModel], alors cela fonctionne. Si j'écris 

<option value="undefined" selected>Select one category </option>    

alors il considère comme l'un de la valeur. Je dois m'assurer qu'il y a de la place et qu'il est également nécessaire de sélectionner l'une des valeurs

4
Ruchita Ajmera

Vous pouvez utiliser [value]="" selected hidden

J'ai créer une démo sur Stackblitz

<form role="form" class="form form-horizontal" (ngSubmit)="onSubmit()" #form="ngForm" ngNativeValidate>
    <div class="form-group row">
        <div class="col-xl-4 col-lg-6 col-md-12">
            <fieldset class="form-group">
                <label for="customSelect">Categories:</label>
                <select class="custom-select d-block w-100" id="Category" [(ngModel)]="Category" name="Category" required placeholder="d.ff">
                    <option hidden [value]=""  selected>Select one category </option>
                    <option *ngFor="let item of myBusinessList" [value]="item.id">{{item.name}}</option>
                </select>
            </fieldset>
        </div>
    </div>
    <button type="submit" class="btn btn-raised btn-danger">Save</button>
</form>
3
Krishna Rathore

pour une forme angulaire basée sur un modèle, vous pouvez envisager cette demo . vous pouvez trouver le code ici

pour un formulaire html simple, voici un extrait .

<form>
    <select required>
        <option value="" disabled selected hidden>Select a value</option>
        <option value="0">option 1</option>
        <option value="1">option 2</option>
    </select>
</form>

<option value="" disabled selected hidden>Select your option</option>
3
Divneet

Si vous souhaitez que la première valeur soit sélectionnée lorsque Category est toujours undefined, vous pouvez affecter la valeur undefined à la première option avec ngValue:

<option [ngValue]="undefined" hidden>Select one category</option>
0
ConnorsFan