AJAX - Ecrire à plusieurs endroits

Fermé
neopolo - 22 janv. 2009 à 07:57
 neopolo - 23 janv. 2009 à 00:12
Bonjour,
Voici la fonction AJAX que j'utilise :

<script language="Javascript" type="text/JavaScript">
function makeRequest(url,id_niveau,id_ecrire)
{
var http_request = false;
if (window.XMLHttpRequest)
{
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType)
{
http_request.overrideMimeType('text/xml');
}

}
else if (window.ActiveXObject)
{
try
{
http_request = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
http_request = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e) {}
}
}

if (!http_request)
{
alert('Abandon :( Impossible de créer une instance XMLHTTP');
return false;
}
http_request.onreadystatechange = function() { traitementReponse(http_request,id_ecrire); }
http_request.open('POST', url, true);
http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
obj=document.getElementById(id_niveau);
data="val_sel="+obj.value;
http_request.send(data);

}

function traitementReponse(http_request,id_ecrire)
{
var affich="";
if (http_request.readyState == 4)
{
if (http_request.status == 200)
{
var affich_list=http_request.responseText;
obj = document.getElementById(id_ecrire);
obj.innerHTML = affich_list;
}
else
{
alert('Un problème est survenu avec la requête.');
}
}
}
</script>



Celle ci fonctionne parfaitement pour aller récupérer l'élément "id_niveau", appeler "url" pour y faire la requête nécessaire et pour injecter le résultant dans "id_ecrire"

Maintenant j'aimerai compliquer la tâche à savoir : la fonction récupère toujours "id_niveau" avec un onChange, ensuite cette valeur sera traitée dans "url" voir une deuxième "url_2" avec 2 requêtes différentes, pour injecter tout cela dans 2 endroits différents "id_ecrire_1" & "id_ecrire_2".

Le titre de la fonction serait : function makeRequest(url,url_2, id_niveau,id_ecrire_1,id_ecrire_2)

Concernant le contenu idée de la fonction je n'ai aucune idée des éléments à modifiés ?? Pouvez-vous m'aider ?

Peut-être que la structure de la nouvelle fonction pas correcte.....peu-être partir dans une autre direction pour aire ce que je veux...

Merci d'avance pour votre aide
A voir également:

1 réponse

J'ai cherché toute une journée, je n'ai rien trouvé :-((

Afin d'être plus clair, je reformule ma question :

Le but de la fonction AJAX que j'aimerai trouver est de lier 3 listes déroulantes de cette façon : le choix de la première liste influe sur la deuxième et troisième liste déroulante de manière simultanée et sans rechargement de page.
Mon code cité précédemment sert à lier deux listes mais dès qu'il s'agit de modifier le javascript pour arriver à ce que je recherche, cela devient hard....

Merci d'avance pour votre coup de main
0