diff options
Diffstat (limited to 'Static/Js/userinfo.js')
| -rw-r--r-- | Static/Js/userinfo.js | 34 |
1 files changed, 16 insertions, 18 deletions
diff --git a/Static/Js/userinfo.js b/Static/Js/userinfo.js index ab8982c..28eee2f 100644 --- a/Static/Js/userinfo.js +++ b/Static/Js/userinfo.js @@ -26,22 +26,31 @@ var payload = []; function init() { // Récupération des emplois déja présent let jobs = document.getElementsByClassName("jobsListElem"); - // Pour chaque emploi disponible récupération de sa valeur for (i = 0; i < jobs.length; i ++) { if (jobs[i].getAttribute("data-value") !== "") { payload.push(jobs[i].getAttribute("data-value")); - jobs[i].onclick = (ptrEvent) => {remove(ptrEvent)}; + jobs[i].addEventListener("click", (ptrEvent) => {remove(ptrEvent)}); } } + // Transformation de la liste des emplois choisis en JSON + // et inscription de ce dernier dans la "value" de l'input "jobs". + document.getElementById("jobs").value = JSON.stringify(payload); +} +// Suppression d'un emploi +function remove(ptrEvent) { + // Suppression de l'emploi dans "payload" + payload.splice(payload.indexOf(ptrEvent.srcElement.getAttribute("data-value")), 1); + // Suppression du "div" de l'emploi + document.getElementById("jobsListGrid").removeChild(ptrEvent.srcElement); // Transformation de la liste des emplois choisis en JSON // et inscription de ce dernier dans la "value" de l'input "jobs". document.getElementById("jobs").value = JSON.stringify(payload); } // Ajout d'un emploi -function add() { +document.getElementById("addButton").addEventListener("click", () => { // Récupération du nom et de la valeur du choix dans le "select" des emplois let jobName = document.getElementById("jobsSel").options[jobsSel.selectedIndex].text; let jobValue = document.getElementById("jobsSel").options[jobsSel.selectedIndex].value; @@ -50,7 +59,6 @@ function add() { if (!payload.includes(jobValue) && jobValue !== "") { // Ajout à payload payload.push(jobValue); - // Création, configuration et ajout d'une nouvelle div pour l'emploi choisi // Création du "i" let i = document.createElement("i"); @@ -59,26 +67,16 @@ function add() { let div = document.createElement("div"); div.className = "jobsListElem"; div.dataset.value = jobValue; - div.onclick = (ptrEvent) => {remove(ptrEvent)}; + div.addEventListener("click", (ptrEvent) => {remove(ptrEvent)}); div.appendChild(document.createTextNode(jobName)); div.appendChild(i); // Enfin, ajout au document document.getElementById("jobsListGrid").appendChild(div); - // Transformation de la liste des emplois choisis en JSON // et inscription de ce dernier dans la "value" de l'input "jobs". document.getElementById("jobs").value = JSON.stringify(payload); } -} - -function remove(ptrEvent) { - // Suppression de l'emploi dans "payload" - payload.splice(payload.indexOf(ptrEvent.srcElement.getAttribute("data-value")), 1); - - // Suppression du "div" de l'emploi - document.getElementById("jobsListGrid").removeChild(ptrEvent.srcElement); +}); - // Transformation de la liste des emplois choisis en JSON - // et inscription de ce dernier dans la "value" de l'input "jobs". - document.getElementById("jobs").value = JSON.stringify(payload); -} +// Déclenchement de l'init +init(); |
