From b9928180a941a719ba486f38e977f3edae240f62 Mon Sep 17 00:00:00 2001 From: Melissa Date: Fri, 19 Jun 2026 15:33:36 +0200 Subject: [PATCH] added javascript for the table on contact page --- equipe.js | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 equipe.js diff --git a/equipe.js b/equipe.js new file mode 100644 index 0000000..3956411 --- /dev/null +++ b/equipe.js @@ -0,0 +1,47 @@ +const equipe = [ + { nom: "Mélissa", job: "Stagiaire", partie: "Page contact" }, + { nom: "Guillaume", job: "Stagiaire", partie: "Page services" }, + { nom: "Matthieu", job: "Tuteur", partie: "Relecture" }, +]; + +for (const membre of equipe) { + console.log(membre.nom + " — " + membre.job + " — " + membre.partie); +} + +const corps = document.getElementById("corps_equipe"); + +function afficherEquipe(liste) { + let lignes = ""; + for (const membre of liste) { + lignes += ` + + ${membre.nom} + ${membre.job} + ${membre.partie} + `; + } + corps.innerHTML = lignes; +} +afficherEquipe(equipe); + +document.getElementById("nb_membres").textContent = equipe.length; + +const champRecherche = document.getElementById("recherche"); + +champRecherche.addEventListener("input", function () { + const motCherche = champRecherche.value.toLowerCase(); + + // on garde seulement les membres dont le nom contient le texte tapé + const resultats = equipe.filter(function (membre) { + return membre.nom.toLowerCase().includes(motCherche); + }); + + afficherEquipe(resultats); // on ré-affiche, mais filtré +}); + +document.getElementById("trier").addEventListener("click", function () { + const triee = [...equipe].sort(function (a, b) { + return a.nom.localeCompare(b.nom); + }); + afficherEquipe(triee); +});