J'utilise xVal avec MVC et jquery validate. Tout fonctionne bien, jusqu'à ce que j'arrive à mon validateur personnalisé qui fait un appel ajax.XVal, JQuery Valider, et Ajax oh mon!
l'appel ajax renvoie la bonne valeur, en fonction de l'onglet net Firbug. Mais quelque chose ne va pas et je ne peux pas le comprendre.
Voici le code javascript:
function CheckEmail() {
var res;
$.ajax({
type: "GET",
url: "/User/CheckEmail",
data: "email=" + $('#EmailAddress').val(),
success: function(result) {
res = result;
}
});
if (res == "True") {
return true;
}
else {
return false;
}
}
quand je fais un pas à travers avec Firebug, res est montrant comme non défini. Je pense que c'est le problème.
J'ai passé 4 heures à réorganiser et modifier ce code et rien ne semble le faire fonctionner correctement.
J'ai une théorie selon laquelle il n'attend pas que l'ajax soit exécuté pour exécuter l'instruction if. Quelqu'un peut-il confirmer ou infirmer cela?
Vous voudrez peut-être vérifier xVal. Il utilise vos règles de validation de domaine pour générer des scripts de validation jQuery dans vos vues (il effectue également la validation côté serveur). http: //blog.codeville.net/2009/09/17/xval-v10-now-available/ – jrummell
Cette fonction est appelée avec xVal pour correspondre à un attribut de validation côté serveur personnalisé :) – Patricia
D'accord. J'ai découvert que la nouvelle version de xVal (1.0) a un type de règle à distance. Vous pouvez lire tout sur le blog de Steve: http://blog.codeville.net/2009/09/17/xval-v10-now-available/ Il a résolu le problème pour moi. – Patricia