[AJAX] Passage data d'une fonction à une autre
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| function getplusdeprecis(motclef, bclidprecis) {
creerRequete();
var url = "lirerepprecis.php?motclef=" + motclef + "&bclidprecis=" + bclidprecis;
requete.open("GET", url, true);
var a = motclef;
var b = bclidprecis;
requete.onreadystatechange = actualiserPage;
requete.send(null);
}
function actualiserPage() {
if (requete.readyState == 4) {
var recupdata = requete.responseText;
var imagemoins = "<img src='images/precismoins.png' name='plusdeprecis'" +
"onClick='cachelesprecis(\"$motclef\", \"$bclidprecis\")' />" +
" RECLIC POUR CACHER TOUS LES PRECIS";
document.getElementById("imageplusoumoins").innerHTML = imagemoins;
document.getElementById("tjsplusdeprecis0").innerHTML = recupdata;
}
} |
Ceci fonctionne bien, il va bien rechercher les données avec responseText.
Par contre ce que je voudrai, c'est faire passer la valeur de mes variables a et b de la fonction getplusdeprecis vers la fonction actualiserPage.
J'ai bien essayé de faire comme çà :
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
| function getplusdeprecis(motclef, bclidprecis) {
creerRequete();
var url = "lirerepprecis.php?motclef=" + motclef + "&bclidprecis=" + bclidprecis;
//var url = "lirerepprecis.php?motclef=bonjour";
requete.open("GET", url, true);
//alert(motclef);
var a = motclef;
var b = bclidprecis;
//alert(a);
//actualiserPage(motclef, bclidprecis);
requete.onreadystatechange = actualiserPage(a, b);
requete.send(null);
}
function actualiserPage(motclef, bclidprecis) {
alert(motclef);
if (requete.readyState == 4) {
var recupdata = requete.responseText;
var imagemoins = "<img src='images/precismoins.png' name='plusdeprecis'" +
"onClick='cachelesprecis(\"$motclef\", \"$bclidprecis\")' />" +
" RECLIC POUR CACHER TOUS LES PRECIS";
document.getElementById("imageplusoumoins").innerHTML = imagemoins;
document.getElementById("tjsplusdeprecis0").innerHTML = recupdata;
}
} |
La fenêtre alert s'affiche bien, avec la bonne valeur.
Par contre si je déplace l'alert comme ci-dessous :
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
| function getplusdeprecis(motclef, bclidprecis) {
creerRequete();
var url = "lirerepprecis.php?motclef=" + motclef + "&bclidprecis=" + bclidprecis;
//var url = "lirerepprecis.php?motclef=bonjour";
requete.open("GET", url, true);
//alert(motclef);
var a = motclef;
var b = bclidprecis;
//alert(a);
//actualiserPage(motclef, bclidprecis);
requete.onreadystatechange = actualiserPage(a, b);
requete.send(null);
}
function actualiserPage(motclef, bclidprecis) {
if (requete.readyState == 4) {
alert(motclef);
var recupdata = requete.responseText;
var imagemoins = "<img src='images/precismoins.png' name='plusdeprecis'" +
"onClick='cachelesprecis(\"$motclef\", \"$bclidprecis\")' />" +
" RECLIC POUR CACHER TOUS LES PRECIS";
document.getElementById("imageplusoumoins").innerHTML = imagemoins;
document.getElementById("tjsplusdeprecis0").innerHTML = recupdata;
}
} |
J'ai un message d'erreur => Error : Type mismatch
Mon problème, c'est que j'ai besoin absolument de faire passer ces valeurs.
Je vois une solution en faisant revenir les valeurs par la page lirerepprecis.php.
Auriez-vous une solution plus direct?
D'avance je vous remercie.