2010-07-10 8 views
0

J'ai ASP.NET MVC 2 en cours d'exécution et je voudrais vérifier l'existence d'un client (essentiellement un utilisateur frontal) via la validation. Faire ce côté serveur est évidemment assez facile, mais j'ai du mal à le faire fonctionner côté client, puisque je dois attendre la fonction de rappel dans la fonction retournée par la fonction Sys.Mvc.ValidatorRegistry.validators. Quelques fonctions ici, hein? ;-)

La chose ressemble à ceci:

Sys.Mvc.ValidatorRegistry.validators["uniqueuser"] = function (rule) { 

    // we return the function that actually does the validation 
    return function (value, context) { 
     $.getJSON('ClientExists', { email: value }, function (data) { 
      if(!data.clientExists) return true; 
     }); 
     return rule.ErrorMessage; 
    }; 
}; 

Bien sûr: if(!data.clientExists) return true; ne fonctionne pas, puisque la fonction de rappel est async.

Comment puis-je attendre que les données reviennent?

Merci d'avance.

Répondre

1

Vous pouvez vérifier this blog post qui contient un bon exemple de ce que vous essayez de faire.

+0

Devinez j'ai raté celui sur google ;-) Merci mon pote! –

Questions connexes