48 lines
1.4 KiB
JavaScript
48 lines
1.4 KiB
JavaScript
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 += `
|
|
<tr>
|
|
<td>${membre.nom}</td>
|
|
<td>${membre.job}</td>
|
|
<td>${membre.partie}</td>
|
|
</tr>`;
|
|
}
|
|
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);
|
|
});
|