1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
| function ajax(url) {
let formData = new FormData();
// On récupère les données de notre formulaire
formData.append('designation', document.getElementById("designation").value);
formData.append('montant', document.getElementById("montant").value);
formData.append('qte', document.getElementById("qte").value);
// On récupère la valeur du jeton CSRF
let csrfTokenValue = document.querySelector('[name=csrfmiddlewaretoken]').value;
const request = new Request('url', {
method: 'POST',
body: formData,
headers: {'X-CSRFToken': csrfTokenValue}
});
// On exécute l'appel à notre vue configurée ci-dessus
fetch(request)
.then(response => response.json())
.then(result => {
// L'enregistrement a été effectué, il faut rafraichir l'affichage
if (result["operation_result"] == 1) {
loadForm("utilisateurs");
}
// L'enregistrement a soulevé une erreur que l'on va afficher à l'utilisateur
if (result["operation_result"] == 0) {
const errors = JSON.parse(result["errors"])
if (errors["designation"] != null) {
const resultElement = document.getElementById("designation");
resultElement.innerHTML = errors["designation"][0]["message"];
}
if (errors["montant"] != null) {
const resultElement = document.getElementById("montant");
resultElement.innerHTML = errors["montant"][0]["message"];
}
if (errors["qte"] != null) {
const resultElement = document.getElementById("qte");
resultElement.innerHTML = errors["qte"][0]["message"];
}
};
})
} |