Dans mon application ASP MVC 3, j'ai ce formulaire
@using (Html.BeginForm()) { <input id="Username" name="UserName" type="text" value="Username" class="form-text" /> <input id="PasswordTxt" name="PasswordTxt" type="text" value="Password" class="form-text" /> <input id="Password" name="Password" type="password" class="form-text" style="display: none"/> <input id="bt_login" type="submit" value="Log in" class="bt_login" /> <div class="login_lbl_error"> @Html.ValidationSummary() </div> }
3 Réponses :
avec MVC3, une classe d'entrée d'entrée-validation-erreur code> CSS sera automatiquement ajoutée aux éléments d'entrée qui ont des erreurs de validation.
donc dans votre CSS, vous pouvez styler cette classe: p>
Et il n'y a aucun moyen de remplacer ce nom de classe?
@AYYYASH Vous ne pouvez pas remplacer le nom de la classe CSS en tant que tel, mais vous pouvez obtenir des pouvoirs supplémentaires lorsqu'il y a une erreur. See my answer at Stackoverflow.com/Questtions/11468130/...
Par défaut MVC ajoute une erreur d'entrée-validation-erreur et de validation de champ, vous pouvez utiliser JQuery pour remplacer ces classes:
p>
<script type="text/javascript"> $(document).ready(function(){ $('.input-validation-error').addClass('CustomErrorClass').removeClass('input-validation-error'); $('.field-validation-error').addClass('CustomErrorClass').removeClass('field-validation-error'); }); </script>
Etant donné que ASP.NET MVC ajoute la classe Code> Erreur de validation de champ CODE> à l'élément de message d'erreur et Erreur d'entrée-validation-erreur code> Pour former des contrôles, je viens de changer le Nom de la classe utilisant jQuery:
Pourquoi cette réponse n'a-t-elle pas reçu mon attention? Cela semble beaucoup plus facile / plus rapide que de faire des aides de tags, mvchtmlingstrings, etc. J'ai fini par mettre ceci au début de mon MAIN.JS: $ ("erreur d'entrée-validation"). Removeclass ("entrée-validation-e Rror "). Addclass (" est-invalide "); $ ('. Erreur de validation sur le terrain'). Removeclass ("Validation sur le terrain-e rror"). AddClass ("Inv alid-feedback");
Avez-vous essayé d'utiliser JQuery pour changer de classe de Erreur de validation d'entrée B> à tout ce dont vous avez besoin?
Oh, je ne savais pas cette erreur de validation d'entrée, dois-je faire sur un certain événement?
Vous pouvez joindre un gestionnaire à l'événement Soumettre de votre formulaire, vous pouvez modifier toutes les entrées avec cette classe à Login_LBL_Error. Comme alternative, vous pouvez simplement utiliser "Erreur de validation d'entrée" :)
La question que je pense est ... Quand est-ce que ça tombe mal? Sur le bouton Cliquez avec la validation du client? ou après avoir reculé? Où faites-vous le chèque de validation?
@Musefan: Cela devient faux après la post-retour, je fais la vérification de la validation dans le contrôleur
MVC recommande de faire une manière spécifique, à l'aide de HTML.TextBoxfor, etc., où les noms de votre élément doivent correspondre à vos propriétés de modèle de vue. Vous devriez vérifier ça out