Bonjour,

je suis assez nouveau en AJAX et Javascript et j'ai un truc qui me prend la tête

J'essaie de passer des valeurs d'une fonction a une autre et de faire des conditions sur cette fonction.

Par exemple :
=> un requete AJAX me renvoie une valeur vide ou pas.

Si c'est vide , rien ne doit se passer , si ce n'est pas vide , j'affiche un message d'alerte et je quitte la fonction.

code AJAX
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
if ($todo=="doublon"){
	$numAT = $_GET['numAT'];
	$plan = new planification(); 
	$doublon = array(); 
	$doublon = $plan->DoublonPlanification($numAT); 
        // -- la fonction ci-dessus envoie le résulat qu'en cas de doublon --
	if($doublon!=""){
		echo json_encode($doublon); 
	}
}

Dans la fonction qui appelle le script php en AJAX , je mets le résulat dans champ "hidden".
(j'ai essyé avec des globales et des "return glob" sans plus de succès.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
...
if(req.readyState == 4)
{
	if(req.status == 200)
	{
                glob = document.getElementById("glob_variable");
		glob.value  = req.responseText ;
        }
}
...
Dans le alert(glob) ci-dessous, j'ai bien la bonne valeur ( vide ou le JSON) , mais c'est toujours l'alerte "Déjà programmée" qui s'affiche. Comme si le "if(glob!=""){" ne fonctionne pas malgré que la variable glob contienne le texte. J'ai essayé de faire des essais avec des booléens et autre , mais je me tors les neurones sans y arriver ...

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
glob = document.getElementById("glob_variable").value;
alert(glob); 
if(glob!=""){
	alert("Déjà programmée !"); 
	return false;
}else{
	return true ; 
}
Si quelqu'un avait un petite idée ...

Excellent dimanche a tous

Olivier