J'ai une liste déroulante des pays pour "sélectionner le pays", il est nécessaire de définir [valeur] = "non défini" sinon il ne serait pas affiché comme sélection par défaut au lieu de la sélection vide. p> Même si le champ marqué est le cas échéant, sous forme de formulaire requis ne sera pas montré comme pour p> qui est un comportement par défaut dans HTML 5: P> comme un travail autour de la validation de la poignée sur le formulaire Soumettre, mais cette fois, les champs obligatoires seront validés, mais enfin champ de pays. p> Quelle pourrait être une solution au champ [valeur] = "non définie" et montrer "Veuillez sélectionner un élément d'abord" alerte? P> P> P> P> P> P> P> P> P> P> P> P> P> P> P> P> P> P> P> P> P> Voir le Forked Fiddle de Daniel's P> P>
3 Réponses :
Pour définir une valeur d'espace réservé de votre sélection, définissez l'état du modèle sur avec des formes réactives forte> p> dans votre modèle p> null code> et ajoutez une option avec un
null code> valeur. L'état requis invalidera
null code> en option, qui définira le formulaire à invalide et le contrôle spécifique à invalider. Vous pouvez gérer le message de validation de quelque manière que vous souhaitiez.
countryTemplateForm = null;
countries = [
{ name: 'USA'},
{ name: 'India' },
{ name: 'France' }
];
Je pense qu'il y a un malentendu, le problème est «d'alerte requis» Soumettre, dans votre violon, il n'existe pas de formulaire Soumettre. Voir
J'ai mis à jour la Stackblitz pour correspondre à vos exigences!
Réglage Choisissez la valeur de l'état pour vider la chaîne
Si vous souhaitez utiliser l'option par défaut, sélectionnez à partir de la liste ou définissez explicitement l'option par défaut
J'ai également eu le même problème à utiliser après avoir résolu le problème pour moi
Utilisation de non défini code> comme
NGValue code> pour
option code> est une approche correcte pour sélectionner l'option par défaut lors de l'initialisation
Sélectionnez code> avec un objet vide . Merci.
Je ne comprends pas ce que vous voulez dire avec la partie pourquoi il serait nécessaire de définir la valeur sur
non défini code>?
Cela signifie que si vous souhaitez montrer l'option par défaut dans Sélectionner un élément, les options doivent avoir une valeur "non définie"
Parlez-vous de toute exigence spécifique introduite par angulaire? Parce qu'en HTML lui-même, il n'y a pas de telle exigence.
Désolé pour la confusion, essayez de clarifier avec le titre de la question mise à jour
Vous devriez vraiment laisser angular gérer la validation pour vous. Dans ma réponse proposée, votre contrôle de formulaire code> SELECT CODE> sera invalide et vous pouvez afficher un message d'erreur aussi longtemps que cela reste invalide. Et rappelez-vous,
null! == non défini code>.
NULL code> est une valeur,
non défini code> n'est pas.
Je ne vois pas comment cela clarifie, cela indique simplement ce que nous savions déjà - la valeur doit être la chaîne vide, car cela fonctionne comme défini par la spécification HTML5. Pourquoi vous insistez sur la définition
non définie code> car la valeur est ce que je voulais savoir.