0

Ich versuche, einige Formularüberprüfung zu machen und aus irgendeinem Grund, wenn ich versuche, eine Klasse hinzuzufügen, mit der Bedingung myTest.prize nichts auswählen das passiert. Dies funktioniert jedoch bei einer normalen Eingabe einwandfrei. Bitte beachten Sie mein Beispiel unten.ngControlStatus (gültig, ungültig, makellos, schmutzig, etc.) funktioniert nicht auf <select>

<div class="form-group" [class.has-error]="hasPrimaryLanguageError && primaryLanguage.pristine"> 
    <label>Primary Language *</label> 
    <select class="form-control" #primaryLanguage name="primaryLanguage" [(ngModel)]="model.primaryLanguage"> 
    <option value="default">Select a Language...</option> 
    <option *ngFor="let lang of languages">{{ lang }}</option> 
    </select> 
    <div *ngIf="hasPrimaryLanguageError && primaryLanguage.pristine" class="alert alert-danger">Required</div> 
</div> 

Antwort

0

Ihr Standardwert muss leer sein, d.

<option value="">Select a Language...</option> 

und setzen auch zunächst

model.primaryLanguage = ""; 

so Ihre endgültige Code

sein
<div class="form-group" [class.has-error]="hasPrimaryLanguageError && primaryLanguage.pristine"> 
    <label>Primary Language *</label> 
    <select class="form-control" #primaryLanguage name="primaryLanguage" [(ngModel)]="model.primaryLanguage" required> 
     <option value="">Select a Language...</option> 
     <option *ngFor="let lang of languages" value="{{yourlanguaugeid}}">{{ lang }}</option> 
    </select> 
    <div *ngIf="hasPrimaryLanguageError && primaryLanguage.pristine" class="alert alert-danger">Required</div> 
</div> 
0

Nach einem Blick in diese weiter fand ich, dass meine #primaryLanguage nicht ngModel gleich gesetzt wurde. Das hat mein Problem gelöst.

Verwandte Themen