Bonjour à tous,

Je débute un peu en AJAX, et malheureusement je n'arrive pas à trouver de réponse à mon problème. Je me suis basé sur un exemple W3.

Je désire activer le contenu d'un tableau dans une DIV, en passant par AJAX pour ne pas rafraîchir tout le contenu, cela fonctionne donc très bien à partir du moment où nous avons une DIV avec le même nom.

Néanmoins, je désire que par exemple nous ayons plusieurs DIV avec des noms différents mais dont seulement le chiffre final du nom de la DIV change, ainsi dans la logique il suffirait de la changer coté Javascript.
Exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
<div id="txtHint0"><b></b></div>&nbsp;
<div id="txtHint1"><b></b></div>&nbsp;
<div id="txtHint2"><b></b></div>&nbsp;
<div id="txtHint3"><b></b></div>&nbsp;
<div id="txtHint4"><b></b></div>&nbsp;
<div id="txtHint5"><b></b></div>&nbsp;
<div id="txtHint6"><b></b></div>
Les liens qui appèlent l'AJAX :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
<a href="#" onClick="showText(0)">test 0</a>&nbsp;
<a href="#" onClick="showText(1)">test 1</a>&nbsp;
<a href="#" onClick="showText(2)">test 2</a>&nbsp;
<a href="#" onClick="showText(3)">test 3</a>&nbsp;
<a href="#" onClick="showText(4)">test 4</a>&nbsp;
<a href="#" onClick="showText(5)">test 5</a>&nbsp;
<a href="#" onClick="showText(6)">test 6</a>
Ainsi le numéro envoyé à la fonction pourrait être concaténé avec le nom de la DIV en JS comme par exemple "txtHint"+6. H'ai donc passé STR en paramètre de stateChanged.

Le code AJAX concerné :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
<script language="JavaScript">
var xmlhttp
 
function showText(str)
{
 xmlhttp=GetXmlHttpObject();
 if (xmlhttp==null)
 {
 alert ("Your browser does not support AJAX!");
 return;
 }
 var url="mapage.asp";
 url=url+"?q="+str;
 url=url+"&sid="+Math.random();
 xmlhttp.onreadystatechange=stateChanged(str);
 xmlhttp.open("GET",url,true);
 xmlhttp.send(null);
 }
 
function stateChanged(str)
{
if (xmlhttp.readyState==4)
 {
document.getElementById("txtHint" + str).innerHTML=xmlhttp.responseText;
}
}
 
function GetXmlHttpObject()
{
if (window.XMLHttpRequest)
{
return new XMLHttpRequest();
}
if (window.ActiveXObject)
{
return new ActiveXObject("Microsoft.XMLHTTP");
}
return null;
}
</script>
Rien ne se passe quand on clique sur les liens.

Merci d'avance pour vos interventions, je suis certain qu'il s'agit d'une erreur toute bête !