MVC.net jQuery Validation
-
09-06-2019 - |
Question
La solution
Essayez de spécifier à la fois un conteneur et un conteneur d’étiquettes dans vos options. J'ai également ajouté display: none;
au style de conteneur d'erreur pour permettre à jQuery de décider quand l'afficher.
$().ready(function() {
$("#CreateLog").validate({
errorLabelContainer: $("ul", $('div.error-container')),
wrapper: 'li',
rules: {
UserName: {
required: true,
minLength: 2,
}
},
messages: {
UserName: {
required: "Please enter a username",
minLength: "Your username must consist of at least 2 characters"
}
}
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="error-container">
<ul></ul>
</div>
<form id="CreateLog" action="Create" method="post" />
<label>UserName</label><br />
<%=Html.TextBox("UserName")%>
<br />
<input type=submit value=Save />
</form>
Cela devrait fonctionner.
Autres conseils
Vous pouvez consulter la approche de validation ASP.NET MVC de Karl Seguin . sur CodeBetter.com et son exemple zone d'application .
Validation - Partie 1 - Mise en route
Il existe un correctif Visual Studio 2008 pour JQuery IntelliSense dans VS2008 . Cela a peut-être également été intégré au SP1.
en ce qui concerne intellisense pour jquery (et d’autres plugins): pour que vos fichiers de script possèdent également un intellisense complet, vous devez inclure la ligne suivante en haut de votre fichier .js une fois pour chaque fichier de votre choix:
/// <reference path="[insert path to script file here]" />
simple, mais très utile =)