EXAMEN

Il est temps de tester vos connaissances

L'ensemble des cours sont à votre disposition en ligne et vous avez le droit de les consulter pendant l'examen.

TEST 1 | Le formulaire interactif

Le but de ce travail pratique est de réaliser un formulaire interactif, que l'on animera grâce à jQuery. Il s'agit d'un formulaire basique, avec quatre ou cinq champs maximum, qui verront leur style CSS changer suivant l'action de l'utilisateur. Le but est de vérifier les informations entrées par l'utilisateur : Nombre de caractères, vérifier que la confirmation du mot de passe est identique à celui-ci, vérifier si tous les champs sont remplis, etc.

Objectif concret

Ce formulaire devra contenir quatre champs :

  • un champ text pour le pseudonyme ;

  • un champ password pour le mot de passe ;

  • un deuxième champ password pour la confirmation du mot de passe ;

  • et un dernier champ text pour ce que vous voulez, comme l'adresse e-mail par exemple.

De même, deux boutons devront permettre respectivement d'envoyer les données, et de vider les champs.

Pour le moment, le but est juste de vous faire pratiquer. Vous devrez vous assurer que l'utilisateur rentre les bonnes infos, de la bonne manière :

  • Tous les champs devront contenir au moins 5 caractères.

  • le mot de passe et la confirmation devront être bien sûr identiques.

  • si les champs sont vides lors de l'envoi, on affiche un message d'erreur.

Pour indiquer l'erreur au visiteur, il vous suffira d'utiliser CSS : une bordure de champ de couleur rouge ferait par exemple l'affaire. De la même manière, si le champ est bon, vous pourriez changer la couleur du champ adéquat en vert.

Méthodes requises

Pour pouvoir réaliser cela, vous allez devoir utiliser les évènements, vous ne pourrez rien faire sans. De même, la manipulation du CSS doit être maîtrisée afin de pouvoir animer les champs. N'oubliez pas que vous devez traiter tous les cas, car il ne faut jamais faire confiance à l'utilisateur.

Pour récupérer le contenu d'un champ, vous devrez utiliser la méthode : val(). La propriété length vous permettra, elle, de récupérer la longueur d'une chaîne de caractère.

Voici la partie HTML dont nous allons nous servir ici :

<div id="erreur">
<p>Vous n'avez pas rempli correctement les champs du formulaire !</p>
</div>

<form>
<label for="pseudo">Pseudonyme</label> <input type="text" id="pseudo" class="champ" /><br /><br />
<label for="mdp">Mot de passe</label> <input type="password" id="mdp" class="champ" /><br /><br />
<label for="confirmation">Confirmation</label> <input type="password" id="confirmation" class="champ" /><br /><br />
<label for="mail">E-mail</label> <input type="text" id="mail" class="champ" /><br /><br />
<input type="submit" id="envoi" value="Envoyer" /> <input type="reset" id="rafraichir" value="Rafraîchir" />
</form>

Le bloc contenant le message d'erreur DOIT être invisible par défaut : nous vous suggérons d'utiliser la propriété CSS suivante pour celui-ci : display : none.

N'oubliez pas d'importer la librairie jQuery et de bien utiliser la fonction principale de la librairie dans laquelle on vient mettre le code ensuite.

Une fois cela fait mettez tous vos éléments HTML dans des objets jQuery pour les manipuler plus facilement dans votre code.

var $pseudo = $('#pseudo'),
$mdp = $('#mdp'),
$confirmation = $('#confirmation'),
$mail = $('#mail'),
$envoi = $('#envoi'),
$reset = $('#rafraichir'),
$erreur = $('#erreur'),
$champ = $('.champ');

Bon courage 🚀🚀🚀