2010-09-10 8 views
0

Scott Gu wrote an excellent article Explication de l'application de la validation des annotations de données dans ASP.NET MVC 2. J'ai implémenté les éléments de cet article pour le travail côté serveur. Ça marche bien. Je reçois des messages d'erreur en cas de problème.Activation de la validation côté client dans ASP.NET MVC 2 et AJAX

J'ai essayé d'ajouter le code pour également accrocher dans les messages d'erreur côté client (ainsi un message est affiché quand je tabule hors d'un champ qui enfreint les règles), mais, malheureusement, ceci ne semble pas fonctionner. Je veux fournir plus d'informations pour ma question, mais je ne suis même pas sûr où déboguer où mon problème est en ce moment. Comment puis je faire ça?

Pour décrire ma mise en page du site:

Site.Master - The Html.EnableClientValidation() call is here. 
    Index.aspx - Contains code to turn partial pages into a tab via jQuery UI tabs. 
    PartialPage1.ascx - Contains the fields that I want validated. 
    PartialPage2.ascx - Contains the fields that I want validated. 

Toute aide ou suggestion sur où/comment démarrer le processus de débogage serait très apprécié. Je vous remercie.

Répondre

0

Je fini par changer la façon dont l'ensemble de mon application fonctionne web (un problème est que je n'avait pas une compréhension complète sur ASP.NET MVC), j'ai donc changé depuis pour l'utiliser plus correctement et je ne compte plus sur AJAX (abusé). Par conséquent, la validation côté client fonctionne désormais sans hacks supplémentaires par article de Scott Guthrie.

1
+0

Bons messages et j'ai l'impression qu'ils résoudraient mon problème. Cependant, j'ai essayé à la fois votre solution, ainsi que le sur par Adam Craven, et il ne semble pas fonctionner. Si cela fait une différence, les formulaires AJAX sont dans les onglets de l'interface utilisateur jQuery et non dans un formulaire AJAX "normal". (AKA Ajax.BeginForm()) Cela ferait-il une différence? – JasCav

+0

@JasCav - Pour être honnête, je devrais tester un tel cas, je vais essayer de le faire. Pouvez-vous envoyer une partie de votre code source pour que je puisse recréer votre cas exactement? – tpeczek

+0

Malheureusement, je ne serais pas en mesure d'envoyer ce code spécifiquement (informations propriétaires et tout ça), mais je peux essayer de se moquer de quelque chose qui démontre le problème. J'ai votre adresse email depuis votre blog. (BTW, +1 juste pour offrir d'aider.Vraiment apprécier cela.) – JasCav

Questions connexes