Bonjour à toutes et à tous,

Les champs de type file ne pouvant être récupérés en Ajax, je suis passé par la création d'un élément HTML pour récupérer la réponse du serveur suite au traitement PHP.

Mais je constate que la valeur de la variable que j'ai crée dans mon code Javascript n'est pas récupérée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
var rep = $("#iframe").contents().find("span").html() ou .text();
ne donne rien !

Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
$(function(){
	// le chargement de la réponse du serveur se fera lors du clic sur le bouton de soumission du formulaire  
	// ET NON AU CHARGEMENT DE LA PAGE!
	$(":submit").click(function() { 
		$("#iframe").load(function(event){
			event.preventDefault();			
			//$(".loader").show();
 
			var rep = $("#iframe").contents().find("span");
			alert(rep);	
 
			success : 				
				if(rep=="ok") {
					$(".loader").hide(); // on cache le loader d'attente Ajax
					$('.annonceSent').show("fast").text("l'upload s'est correctement effectué. Un email de confirmation a été envoyé");					
					$('.annonceSent').fadeOut(6000);				
					$("#annonceForm").find(':input').not(':submit').val("");					
				} // fin if(rep=="ok")
				if(rep.substr(0,6)=="Erreur") {
					$(".loader").hide(); // on cache le loader d'attente Ajax				
					$('.formErreur').show().text("Erreur lors de l'upload!");
					$('.formErreur').fadeOut(5000);						
				} // fin if(rep == "echec ou probleme")
				if(rep.substr(0,7)=="Fichier") {
					$(".loader").hide(); // on cache le loader d'attente Ajax
					$('.formErreur').show().text("Le fichier uploadé est trop volumineux!");
					$('.formErreur').fadeOut(5000);
					$("#annonceForm").find(':input[type=file]').val(""); //récupère tous les input de type file
				} // fin if(rep == "fichier")	
				if((rep.substr(0,4)=="vide") || (rep.substr(0,7)=="Absence")) {
					$(".loader").hide(); // on cache le loader d'attente Ajax
					$("#titre").focus();
					$('.formErreur').show().text("Veuillez remplir tous les champs!");
					$('.formErreur').fadeOut(5000);
				} // fin if(rep == "vide"ou "Absence")	
 
		}); // fin $("#iframe")
	}); // fin $(":submit").click()
}); // fin $(function())

Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
<!-- utilisation de la balise iframe pour permettre la requête AJAX de l'upload de photos-->	
			<iframe src="#" name ="iframe" id ="iframe"><?php include_once 'includes/inc_ajoutAnnonceArticle.php';?></iframe><!-- balise récupérant et affichant la réponse du serveur -->
Merci d'avance.
Transact.