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 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
|
script type='text/javascript'>
var xhr = null; // On initialise la variable XHR
// --------------- On crée une fonction getXhr qui vérifiera si le navigateur supporte les XMLHttpRequest -------------------------------
function getXhr()
{
if(window.XMLHttpRequest) //Si le navigateur est Firefox et autres
xhr = new XMLHttpRequest(); // La variable prend un nouvel XMLHttpRequest
else if(window.ActiveXObject) // Si le navigateur est Internet explorer
{
try // essayer la norme Msxml2
{
xhr = new ActiveXObject("Msxml2.XMLHTTP"); // déclaration d'un nouvel objet activeX dans la variable whr
}
catch (e) // sinon, utiliser la norme Microsoft
{
xhr = new ActiveXObject("Microsoft.XMLHTTP"); // déclaration d'un nouvel objet activeX dans la variable whr
}
}
else // Si le navigateur ne supporte ni les XMLHttpRequest, ni les activeX
{
alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); // On affiche une messagebox
xhr = false; // La variable xhr ne prend pas de valeur
}
}
// ----------------------- On crée la fonction SelectAuto qui sera chargé lors de la sélection du Site et qui génèrera la liste déroulante des autocoms ------------------------------
function SelectAuto()
{
var xhr = getXhr();
//getXhr(); // On appele la fonction getXhr
// Traitement de la réponse au POST envoyé plus bas
xhr.onreadystatechange = function () // On défini ce qu'on va faire quand on aura une réponse
{
if(xhr.readyState == 4 && xhr.status == 200) // si on a tout reçu et que le serveur est ok
{
leselect = xhr.responseText; // On indique que leselect est égal à la réponse xhr
document.getElementById('autocom').innerHTML = leselect; // On se sert de innerHTML pour rajouter les options à la liste autocom
}
}
// Envois des données par post
xhr.open("POST","AjaxCreaRgAuto.php",true); // On ouvre xhr, on lui indique la méthode POST ainsi que le fichier de destination
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); // ne pas oublier ça pour le post
//On poste les arguments
sel = document.getElementById('site'); // ici, l'id du local
idsite = sel.options[sel.selectedIndex].value; // idlocal sera égal à la valeur de l'option sélectionnée
xhr.send("idsite="+idsite); // On envois la variable idlocal qui aura la valeur de idlocal
//alert (idsite); // <-- Si c'est décommenté, ça fonctionne !!!
}
// ----------------------- On crée la fonction SelectLt qui sera chargé lors de la sélection du Site et qui génèrera la liste déroulante des Lt ------------------------------
function SelectLt()
{
var xhr = getXhr();
//getXhr(); // On appele la fonction getXhr
// Traitement de la réponse au POST envoyé plus bas
xhr.onreadystatechange = function () // On défini ce qu'on va faire quand on aura une réponse
{
if(xhr.readyState == 4 && xhr.status == 200) // si on a tout reçu et que le serveur est ok
{
leselect = xhr.responseText; // On indique que leselect est égal à la réponse xhr
document.getElementById('lt').innerHTML = leselect; // On se sert de innerHTML pour rajouter les options a la liste lt
}
}
// Envois des données par post
xhr.open("POST","AjaxCreaRgLt.php",true); // On ouvre xhr, on lui indique la méthode POST ainsi que le fichier de destination
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); // ne pas oublier ça pour le post
//On poste les arguments
sel = document.getElementById('site'); // ici, l'id du site
idsite = sel.options[sel.selectedIndex].value; // idsite sera égal à la valeur de l'option sélectionnée
xhr.send("idsite="+idsite); // On envois la variable idsite qui aura la valeur de idsite
}
</script> |
Partager