Salut
J'essai de developper un site tout en Ajax, qui est cens� ne jamais se recharger, je passe donc par plusieurs fonction que voici :
Les fonctions javascript
L'appelle d'une fonction :
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 function file(fichier, mode){ if(mode == "undefined"){ mode = "XML"; } if(window.XMLHttpRequest) // FIREFOX xhr_object = new XMLHttpRequest(); else if(window.ActiveXObject) // IE xhr_object = new ActiveXObject("Microsoft.XMLHTTP"); else return(false); xhr_object.open("GET", fichier, false); xhr_object.send(null); if(xhr_object.readyState == 4) { if(mode == "XML"){ return(xhr_object.responseXML); } else { return(xhr_object.responseText); } } else { return(false); } } function moteur(URL){ document.getElementById("corpsDuSite").innerHTML = file(URL,"text"); }
La page moteur.php :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2 <a href='#' onClick="moteur('moteur.php?page=accueil');">Retour à l'accueil</a>
Et enfin je charge un page, voici un exemple :
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 <?php include('scripts/include.php'); if(isset($_GET['page'])) { switch($_GET['page']) { case'admin/accueil':include('admin/accueil.php');break; case'admin/formLive':include('admin/formLive.php');break; case'reunion':include('reunion.php');break; case'live':include('live.php');break; default:include('accueil.php'); } } else { include('accueil.php'); } ?>
Sur la derni�re page, quand on clique sur la date. La fonction "test()" devrai r�agir, sauf qu'elle � �t� inclue en javascript dans ma div corpsDuSite et donc il doit lui manquer une sorte de compilation, le navigateur me revoit "test is not defined". J'ai j'ai la solution de charger toute les fonctions javascript d�s le 1er chargement mais ne me plais qu'a moiti�. D�j� �a peut faire crade comme codage et en + �a va mettre du temps � tout charger lors du 1er chargement.
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 <script> function test(){ alert('ça marche!'); } </script> <table border='1'> <tbody id="reunion"> <tr> <th width='300'>Lieu</th><th>Date</th><th>Heure</th> </tr> <?php $i=0; $reunion1 = requete("select numReunion, lieu, DATE_FORMAT(date,'%d/%m/%Y') as date, DATE_FORMAT(date,'%H:%i') as heure from _jourj_Reunions order by numReunion asc"); while($reunion = mysql_fetch_object($reunion1)){ echo "<tr id='".$reunion->numReunion."'>\n"; $nbMessage1 = requete("select * from _jourj_MessagesLive where numReunion=".$reunion->numReunion); $nbMessage = mysql_num_rows($nbMessage1); if($nbMessage != 0){ echo "<td><a href='#' onClick='moteur(\"moteur.php?page=live&numReunion=".$reunion->numReunion."\")'>".$reunion->lieu."</a></td>\n"; } else { echo "<td>".$reunion->lieu."</td>\n"; } echo "<td><a href='#' onClick='test()'>".$reunion->date."</a></td>\n"; echo "<td >".$reunion->heure."</td>\n"; echo "</tr>\n"; $i++; } ?> </tbody> </table>
Y a t'il un moyen "compiler" les fonctions incluse avec cette ligne : document.getElementById("corpsDuSite").innerHTML = file(URL,"text"); ?
Merci d'avance !
Partager