LordSnotling
Messages postés6Date d'inscriptionjeudi 27 novembre 2003StatutMembreDernière intervention 7 octobre 2010
-
10 août 2009 à 16:44
LordSnotling
Messages postés6Date d'inscriptionjeudi 27 novembre 2003StatutMembreDernière intervention 7 octobre 2010
-
11 août 2009 à 19:03
Bonjour, voilà mon problème, j'ai une fonction en javascript qui devrait me retourner une string or il me retourne le code de la function, j'avoue que je ne comprend pas pourquoi.
voici mon code:
//##############################################
//fonction ajax
function connect(){
var data;
var url = 'test.php?val='+$('ids').value;
new Ajax.Request( url , {
method: "GET",
async : false,
onCreate : function() {
$('att').disabled= true ;},
onSuccess : data = renvoi
});
$('te').innerHTML = data;
}
function renvoi(req) {
var d = req.responseText;
return d;
}
je me retrouve donc avec [i]function renvoi(req) {
var d = req.responseText;
return d;
} /i affiché à l'écran au lieu de mon texte, j'ai même essayé de remplacer req.responseText par 'toto' mais j'ai le même problème ce n'est pas toto qui s'affiche mais le script
j'avoue ne pas savoir pourquoi donc toute aide sera la bien venue merci d'avance
LordSnotling
Messages postés6Date d'inscriptionjeudi 27 novembre 2003StatutMembreDernière intervention 7 octobre 2010 11 août 2009 à 19:03
Merci de ta réponse mais le problème avec ta solution c'est que je n'ai pas accès à data en dehors du onSuccess (data est undefined)
et data est en fait un objet JSON { bool:true, val:\'toto\' }, et je voudrais y avoir accès en dehors du onSuccess pour pouvoir tester la valeur de bool, je ne peux pas le faire dans le onSuccess car je voudrais boucler sur la requete ajax tant que bool est à false de cette façon:
[p]
while(!ok){
new Ajax.Request( url , {
method: "GET",
async : false,
onCreate : function() {$('att').disabled= true ;},
onSuccess : data = function (response){
d = eval("("+req.responseText+")");
return d;
}
});
ok = data.bool;
}
/p
j'ai donc besoin de récupéré mon objet en dehors de la requête ajax d'ou le return
mais comme dit précédemment il me retourne le code javascript de la fonction et non la valeur de mon objet, et si j'affecte la valeur dans le onSuccess à data, il est indéfini en dehors ce qui est normal.