Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > AJAX
AJAX Forum sur la programmation AJAX. Avant de poster : Cours AJAX, FAQ AJAX, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 09/02/2012, 11h13   #1
Invité de passage
 
Inscription : avril 2007
Messages : 13
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 13
Points : 0
Points : 0
Par défaut AJAX xmlhttprequest contenu ne s'affiche pas

Bonjour,

Dans le but d'avoir un player mp3 'continu' d'une page à l'autre, j'ai cherché une façon de charger une partie seulement de la page. La solution c'est l'AJAX (semble-t-il...).

Bon, voici le problème :

Je crois avoir fais tous les sites sur le sujet : charger un contenu dans une div avec l'AJAX et son XMLHttpRequest méthode.

J'ai tout essayé mais rien ne s'affiche.L'objet XMLHttpRequest est pourtant bien créé...

Voici le code de l'index.html:

Code :
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
 
<html>
	<head>
		<title>Index</title>
		<link rel="stylesheet" type="text/css" href="css/feuilleStyle.css" />
		<script type="text/javascript" language="javascript">
		function showPage(url,id)
		{
 
			 var httpRequest = false;
 
			if (window.XMLHttpRequest) { // Mozilla, Safari,...
				httpRequest = new XMLHttpRequest();
			}
			else if (window.ActiveXObject) { // IE
				try {
					httpRequest = new ActiveXObject("Msxml2.XMLHTTP");
				}
				catch (e) {
					try {
						httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
					}
					catch (e) {}
				}
			}
 
			if (!httpRequest) {
				alert('Abandon :( Impossible de créer une instance XMLHTTP');
				return false;
			}
			httpRequest.open("GET", url, true);
 
			httpRequest.onreadystatechange = function() { alertContents(httpRequest); };
 
			httpRequest.send(null);
 
		}
 
		function alertContents(httpRequest) {
 
			if (httpRequest.readyState == 4) {
				if (httpRequest.status == 200) {
					alert(httpRequest.responseText);
				} else {
					alert('Un problème est survenu avec la requête.');
				}
			}else {
					alert('Un problème est survenu avec la requête.');
			}
		}
		</script>
	</head>
	<body>		<!--   onload="RunDemo()" -->
		<div id="all">
			<div id="main">
				<div id="conteneur">
					<div id="menu">
 
						 <br><br><br>
						 <a href="#" onclick="showPage('accueilAjax.html','page');" ><img src="images/accueilBtnLiteAnim2.gif"></a>
						 <br><br>
						 <a href="#" onclick="showPage('imagesAjax.php','page');" ><img src="images/imagesBtnLiteAnim2.gif"></a>
					</div>
					<div id="page">
					</div>
				</div>
			</div>
		</div>
	</body>
</html>
et celui de accueilAjax.html :
Code :
1
2
3
4
 
<font color="#FFFFFF">
bla bibib blan
</font>
Il semblerait que la procédure n'arrive pas a 'onreadystatechange' parce qu'aucune 'Alert' ne s'affiche.
Donc le problème est peut être dans 'open', mais alors là je ne vois pas.
Ca me rend fou aidez-moi s'il vous plaît.

edit: voilà, entre autres, un exemple de référence : http://fr.wikibooks.org/wiki/Program.../Ajax/Sommaire
Centauri est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2012, 14h47   #2
Invité de passage
 
Inscription : avril 2007
Messages : 13
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 13
Points : 0
Points : 0
Mea culpa.

A force de prendre du code par-ci par-là, j'ai viré un point-virgule ou deux... désolé

Enfin, grâce à l'Ardoise JavaScript de FireFox j'ai pû mettre le doigt sur le problème.

Cela dit j'ai un autre problème maintenant :
Avant lorsque ma page d'accueil se chargeait il y avait un lancement de fonction:

Code :
<body onload="fonction()">
et maintenant, cette fonction ne se lance plus dans la page chargée en ajax dans le div.

Ce code ne lance pas 'fonction()' :

Code :
<body onload="showPage('accueil.php');fonction()">
M'enfin ... je cherche, et si vous avez la solution au passage...
Centauri est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h02.


 
 
 
 
Partenaires

Hébergement Web