et mon code .js
var reseau = []; // Tableau réseaux
var etatReseau = []; // Tableau d'etat des broches
var adresse = "http://192.168.0.123:80/"; // L'url+port du shield
document.addEventListener('DOMContentLoaded', setup, false);
function setup() {
// fonction qui va lier les variables à leur conteneur HTML
reseau[1] = document.getElementById("reseau1");
reseau[2] = document.getElementById("reseau2");
reseau[3] = document.getElementById("reseau3");
reseau[4] = document.getElementById("reseau4");
reseau[5] = document.getElementById("reseau5");
reseau[6] = document.getElementById("reseau6");
etatReseau[1] = document.getElementById("etatReseau1");
etatReseau[2] = document.getElementById("etatReseau2");
etatReseau[3] = document.getElementById("etatReseau3");
etatReseau[4] = document.getElementById("etatReseau4");
etatReseau[5] = document.getElementById("etatReseau5");
etatReseau[6] = document.getElementById("etatReseau6");
// La fonction concernant le bouton
var bouton = document.getElementById("envoyer");
bouton.addEventListener('click', executer, false);
}
function executer() {
// Fonction qui va créer l'url avec les paramètres puis
// envoyer la requête
var requete = new XMLHttpRequest(); // créer un objet de requête
var url = adresse;
url += "?r=";
for(i=1; i <= 6; i++) { // Pour les réseaux 1 à 6 de notre tableau
if(reseau[i].checked) // si la case est cochée
url += i + ",";
}
// enlève la dernière virgule si elle existe
if(url[url.length-1] === ',')
url = url.substring(0, url.length-1);
console.log(url) // Pour debugguer l'url formée
requete.open("GET", url, true);
console.log(requete) // Pour debugguer la requete
requete.send(null); // On envoie !
requete.onreadystatechange = function() { // on attend le retour
if (requete.readyState == 4) {
console.log(requete.readyState);
console.log(requete.status);
console.log("Réponse reçue: %s", requete.responseText);// Revenu !
if (requete.status == 200) {// Retour s'est bien passé !
// fonction d'affichage (ci-dessous)
afficher(requete.responseText);
} else { // Retour s'est mal passé :(
alert(requete.status, requete.statusText);
}
}
};
}
function afficher(json) {
// Affiche l'état des réseaux revenu en json
var donnees = JSON.parse(json);
console.log("données reçue: %s",donnees);
for(i=1; i <= 6; i++) { // Pour les reseaux 1 à 6 de notre tableau
etatReseau[i].checked = donnees["reseau"][i];
}
}