Validations des champs obligatoires : dépannage des fenêtres contextuelles JQuery dans MVC 4
Lorsque vous travaillez avec les fenêtres contextuelles JQuery dans MVC 4, vous pouvez rencontrer des problèmes avec les fenêtres contextuelles requises les validations sur le terrain ne fonctionnent pas comme prévu. Cela peut se produire malgré la définition des attributs nécessaires dans le modèle et les messages de validation dans la vue.
Résolution :
La solution réside dans la réanalyse du validateur après le chargement dynamique de la fenêtre contextuelle. contenu. Par défaut, le validateur est initialisé au chargement de la page. Lorsqu'un contenu dynamique est ajouté, tel qu'une popup JQuery, le validateur doit être réexécuté pour reconnaître les modifications.
Pour résoudre ce problème, incluez les lignes de code suivantes après le chargement du contenu de la popup :
$(this).load(actionURL, function (html) { // Reparse the validator var form = $('form'); form.data('validator', null); $.validator.unobtrusive.parse(form); $('form', html).submit(function () { ....
En réanalysant le validateur, vous vous assurez que les validations de champs requises sont appliquées au contenu de la popup dynamique.
Remarque supplémentaire :
Bien que le code fourni dans la question inclut l'assistant @Html.TextBoxFor, il est important de noter que l'assistant @Html.ValidationMessageFor doit également être inclus pour afficher les messages d'erreur pour les champs obligatoires non valides.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!