Bonjour,
je viens cherche un peu d'aide car je cale sur un problème élémentaire que je n'arrive pas à résoudre.
J'ai une simple requête ajax au moyen d'Ajax.Updater.
Mon script fonctionne intégré au sein d'une simple page, mais je ne peux pas l'intégrer à l'index de mon site, pour une raison que j'ignore complètement (c'est exactement le même script et j'ai même désactivé tous les javascripts à l'intérieur des balises <head></head> pour être certaine qu'il n'y avait pas de conflit).
Je vois que Firebug signale une erreur, mais je n'arrive pas à interrompre le déroulement de la requête dès l'erreur survenue. Du coup je ne vois pas où ça plante. Il termine la requête, il semble même qu'il m'est transféré les données, il termine et...rien.
Voici le script (il marche)
index.php
<html>
<head>
<titre>Ajax.Updater</titre>
<script language="javascript" type="text/javascript" src="prototype.js"></script>
<script language="javascript">
function tester()
{
elementHTML = document.getElementById('divid');
var url = "mapage.php";
o_options = new Object();
o_options = {method: 'get',onComplete:gestionReponse};
var laRequete = new Ajax.Updater(elementHTML,url,o_options);
}
function gestionReponse(xhr)
{
if (xhr.status == 200)
{
$('divid').innerHTML = xhr.responseText;
}
else
{
$('divid').innerHTML = xhr.status;
}
}
</script>
</head>
<body>
<a href="" onclick="tester();return false;">J'appelle ma page</a>
<div id="divid">Div à rafraichir</div>
</body>
</html>
mapage.php
<?php
echo "je suis la page appelée!!! (enfin peut-être...vu que c'est pas gagné!)";
?>Comment faire pour que s'interrompe la requete dès l'erreur survenue?J'ai ausi esayé avec onSuccess et onFailure...Rien à faire...Firebug enchaîne les étapes sans s'arrêter...Et toujours pas de div rafraichi...
Et pourquoi ce script marche seul mais pas dans l'index de mon site...?
Si quelqu'un a une idée. Je serair ravie de l'entendre. Je continue de chercher mais j'ai déjà épluché pas mal de forums et tutoriaux...Je ne sais plus comment m'y prendre. J'ai testé mille et une versions! Rien à faire.
merci d'avance.