Angulaire 6 valider la saisie du numéro de
J'ai une entrée et le type de numéro. Je tiens à mettre en min et max, si l'entrée est en dehors de cette plage (< min >max), l'erreur sera affiché.
Mon problème est que si l'entrée n'est pas vide, mais non valide, le message d'erreur disparaît (exemple: min =10, max =20, entrée =2000, pas encore de message d'erreur apparaît).
Je recherche sur ce site et il y a un post sur la validation, mais la solution est d'utiliser < md-entrée container-> et < md-erreur>. Je ne veux pas utiliser < md-entrée container-> et < md-erreur>.
Référence:ici
Est de toute façon il résoudre mon problème?
Mon add-hero.component.html:
<div class="publishedYear">
<label>Publish Year: </label>
<input type="number" id="PublishedYear" name="PublishedYear" required min="10" max="20"
[(ngModel)]="hero.PublishedYear" #publishedYear="ngModel">
<p class="alert alert-danger invalid" *ngIf="publishedYear.errors">Invalid Published Year</p>
</div>
Mon Héros.ts
export class Hero {
Id: number;
Name: string;
PublishedYear: number;
Complete?: boolean;
}
- cela a probablement pas grand-chose à voir avec le modèle d'ailleurs avec votre constructeur et votre composant la structure pourrait montrer plus de code?
- rien dans mon constructeur, j'ai ajouté mon Héros.ts à la question.
- Soit, vous devriez avoir ng-forme dans votre code html, et d'utiliser <mat-forme-champ> pour l'entrée ou écrire une méthode pour valider l'entrée d'un composant, lorsque l'utilisateur se fait de donner de la valeur d'entrée et la mise à jour de la variable utilisée dans *ngIf condition.
- vous pouvez poster une réponse au sujet d'avoir ng-forme en html? Je n'utilise pas de ng-forme, mais un simple < div>. Je vous remercie à l'avance.
Vous devez vous connecter pour publier un commentaire.
À vos solutions lorsque vous utilisez l'entrée
type="number"
paramètre min et max ne s'arrêtera que pour permettre à l'utilisateur quand il s'incrémenter ou décrémenter le numéro à l'aide de la molette. mais lorsque l'utilisateur va taper directement le numéro dans le texte, il n'affichera aucune erreurà faire qu'il y a 2 solutions
1) Ajouter un formulaire de contrôle de votre entrée à l'aide angulaire de la validation du formulaire, il y aura un couple d'exemples en ligne
2) Appeler une fonction sur la modification d'une zone de texte ou cliquez sur le bouton pour valider le nombre entré par l'utilisateur correspond à votre expression en fichier ts.
à l'aide de la validation du formulaire que vous devez faire
et en HTML
Voir l'exemple de code dans stackblitz
Ajouter la directive de déclarations. Cela devrait fonctionner pour le modèle de moteur, les formes
Merci pour toutes vos réponses ci-dessus et de vos efforts.
Après quelques heures de recherche, j'ai enfin eu une réponse de : page
Si vous avez un problème comme moi, voici la réponse.
Mon .fichier html:
Mon .ts fichier: