J'ai le code suivant dans mon contrôleur après que l'utilisateur publie le formulaire mais si la validation échoue (_applicationValidator.Validate), je recharge normalement la vue "Edit" mais dans ce cas je veux garder la boîte de dialogue ouverte et montrer simplement ces des erreurs dans le dialogue.Comment gérer les erreurs de validation côté serveur si un formulaire est exécuté dans une boîte de dialogue jQuery UI?
Code de contrôleur:
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Update(ApplicationUpdater applicationUpdater_)
{
if (_applicationValidator.Validate(applicationUpdater_, ModelState, ValueProvider))
{
_repo.UpdateApplication(applicationUpdater_);
ApplicationsViewModel vm = new ApplicationsViewModel();
vm.Applications = _repo.GetApplications();
return View("Index", vm);
}
else
{
ApplicationViewModel vm = GetApplicationVM();
return View("Edit", vm);
}
}
Afficher le code (jQuery)
$(".showEditPopup").click(function() {
$.post("Applications/ShowEdit",
{ recnum: $(this).parents('tr:first').attr("recnum") },
function(htmlResult) {
$("#EditUserControlDiv").remove();
$("#container").append(htmlResult);
$("#container select[multiple]").asmSelect();
$("#EditUserControlDiv").dialog(
{
height: 675,
width: 650,
modal: true
}
);
}
);
});
Si aucune des réponses fournies ne vous aide, pourriez-vous poster un commentaire indiquant pourquoi? Nous pourrions être en mesure d'affiner les réponses pour vous. – gnarf