Prenons un modèle de classe. Ajouter un projet mvc.net (framework ou asp.net core). Et ajouter une volonté de vérifier en requête ajax la validité d’un champ.
Vous aurez alors à utiliser l’attribut Remote de mvc.net.
1. Ajout d’un attribut [Remote] sur le champ de votre modèle
Mettons vous avez un Droide qui a un pistolaser. Vous souhaitez vérifier que ce pistolaser est valide, autorisé.
Ce qui serait bien : proposer une vérification de ce champ, sans faire de submit complet de la page.
C’est possible grâce à l’attribut Remote.
En ajoutant cet attribut sur votre propriété à valider, vous allez autoriser les requêtes ajax de vérification.
Voici un exemple de modele avec vérification en Remote :
https://gist.github.com/evan-boissonnot/537bb2dae6872067b4ed0fc97729a3c0
2. Création de l’action et du controlleur de vérification
Vous devez ensuite créer :
- le controller
- l’action
qui vont être appelés lors de la vérification ajax.
Le plus important à retenir c’est : le type d’ActionResult qui est ici un JsonResult.
Vous devez renvoyer un booléen : true c’est ok, false c’est non valide.
Voici un exemple de controller :
https://gist.github.com/evan-boissonnot/f4b084046d1c2ae2394a9b2de3be9039
Enfin, faites bien attention au nom du paramètre de la fonction : il doit être le même que celui du name, donc de la propriété de vérification.
3. Appel du jquery validate
Enfin, pour que tout fonctionne, vous devez appeler le partial qui référence les jquery validate.
Voici un exemple de deux vérifications Remote, dans notre View: une sur un champ texte, une sur une combo.
https://gist.github.com/evan-boissonnot/8b6073dfbc2b87295a341bae229641af