J'utilise la validation côté client et je voudrais que le message ci-dessous ne s'affiche que lorsque j'ai une erreur. J'essaie d'utiliser ceci une erreur générale au cas où n'importe quel champ est invalide.
Actuellement
"* indique un champ obligatoire"
est toujours affiché même avant la validation.
<%: Html.ValidationSummary(false, "* denotes required field.")%>
J'utilise la liaison de modèle pour effectuer la validation côté client et MVC.
Si vous utilisez un outil de développement dans votre navigateur pour examiner le texte récapitulatif de la validation, vous verrez qu'il contient la classe validation-summary-valid
lorsqu'elle est claire, mais validation-summary-errors
lorsqu'il y a des erreurs de formulaire.
Par conséquent, créez simplement une règle CSS comme suit:
.validation-summary-valid {
display:none;
}
et tout devrait être bon.
Je pense que le problème est le fait que le Html.ValidationSummary doit apparaître avant le.
Au départ, je cherchais une propriété de liste au chargement de la page, donc j’ai pensé transmettre un nouveau modèle. Puis le récapitulatif de validation vient d’apparaître . Quand j’ai changé mon code de
return View(new myModel)
à
return View()
le résumé de validation n'apparaissait pas dans Get. J'ai également ajouté un contrôle nul sur le modèle lors de la vérification de la propriété afin de pouvoir utiliser ce dernier code.