Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks > jQuery
jQuery Forum d'entraide sur le framework jQuery. Avant de poster : Tutoriels jQuery, FAQ jQuery, Tous les tutoriels JavaScript, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 29/06/2011, 17h51   #1
Invité de passage
 
Homme Jonathan Zimmermann
Inscription : juin 2011
Messages : 20
Détails du profil
Informations personnelles :
Nom : Homme Jonathan Zimmermann
Localisation : Suisse

Informations forums :
Inscription : juin 2011
Messages : 20
Points : 3
Points : 3
Par défaut Contenu javascript sur une page ajax

Bonjour,

J'utilise actuellement ajax depuis relativement peu de temps et je suis confronté à un problème.

Sur ma page requete.php, qui est celle qui va afficher le contenu récupéré par AJAX, j'ai le script tout simple

Code :
1
2
3
4
5
 
<script type="text/javascript">
var name = "test";
alert(name);
</script>
Au chargement de la page AJAX, je reçois l'alerte.

Maintenant, avec ce code là :
Code :
1
2
3
4
5
 
<script type="text/javascript">
var name = "test";
<a href="#" onclick="alert(name);">test</a>
</script>
Je reçois une alerte à contenu vide quand je clique sur le lien.


J'en déduis donc que lors d'une requête AJAX, le javascript est exécuté mais toutes les données sont ensuite immédiatement supprimées.

Est-ce vrai ? Si non, que se passe-t'il ? Si oui, comment faire pour contourner le problème ?

Merci d'avance de votre aide,

7804j
7804j est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2011, 19h21   #2
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 019
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 019
Points : 45 114
Points : 45 114
sujet maintes fois traité...
une recherche s'impose ...

sinon y'a des articles comme celui ci
http://dmouronval.developpez.com/tut...-requete-ajax/
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2011, 19h27   #3
Membre chevronné
 
Avatar de micetf
 
Homme Fred
Professeur des Ecoles
Inscription : mai 2009
Messages : 503
Détails du profil
Informations personnelles :
Nom : Homme Fred
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Professeur des Ecoles
Secteur : Enseignement

Informations forums :
Inscription : mai 2009
Messages : 503
Points : 701
Points : 701
Bonjour,

Malgré la réponse de SpaceFrog, je pense que la réponse n'est pas aussi complexe :
Je penche plutôt pour le fait que 'name' soit un mot réservé en JS.
En effet, essaye avec 'nom' au lieu de 'name' et là tu n'auras plus de soucis.

Code PHP :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
<html>
<head>
<script type="text/javascript" src="js/jquery-1.5.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
	$('input').click(function() {
		$.post('requete.php',function(data){
			$('#data').html(data);
		});
	});
});
</script>
</head>
<body>
<input type="button" value="test"/>
<div id="data"></div>
</body>
</html>
et
Code PHP :
1
2
3
4
5
6
7
8
 
<?php 
echo '
<script type="text/javascript">
var nom="autre";
</script>
<a href="#" onclick="alert(nom); return false;">test</a>
';

Mais peut-être me trompe-je...

MiCetF
micetf est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2011, 20h19   #4
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 019
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 019
Points : 45 114
Points : 45 114
j'ai cru comprendre que la question portait sur l'interprétation du javascript contenu dans une reponse Ajax ?

Les echanges entre client et serveur ne se font que sous format de string ...
Si un script est contenu dans la réponse il ne sera pas interprété.

Mais il est clair que nommer une variable name, c'est tendre le baton pour se faire battre ...
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2011, 20h33   #5
Membre chevronné
 
Avatar de micetf
 
Homme Fred
Professeur des Ecoles
Inscription : mai 2009
Messages : 503
Détails du profil
Informations personnelles :
Nom : Homme Fred
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Professeur des Ecoles
Secteur : Enseignement

Informations forums :
Inscription : mai 2009
Messages : 503
Points : 701
Points : 701
Citation:
Envoyé par SpaceFrog Voir le message
Les echanges entre client et serveur ne se font que sous format de string ...
Si un script est contenu dans la réponse il ne sera pas interprété.
Ce serait le cas si la réponse ajax était traitée comme telle (string) :
mais jquery permet de passer par le DOM et, finalement, cela se fait très facilement :
MiCetF
micetf est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2011, 21h09   #6
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 807
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 807
Points : 35 797
Points : 35 797
Code :
1
2
3
4
<script type="text/javascript">
var name = "test";
<a href="#" onclick="alert(name);">test</a>
</script>
Ben surtout, on ne peut pas intégrer du HTML dans un script
Ensuite, pour le choix de name comme nom de variable... c'est effectivement avoir envie de souffrir !
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/06/2011, 09h52   #7
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 019
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 019
Points : 45 114
Points : 45 114

en effet je confonds avec XMLHTTPRequest tout court sans jquery
Jquery permet en effet avec html() d'interpréter les scripts en retour ...
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/06/2011, 17h13   #8
Invité de passage
 
Homme Jonathan Zimmermann
Inscription : juin 2011
Messages : 20
Détails du profil
Informations personnelles :
Nom : Homme Jonathan Zimmermann
Localisation : Suisse

Informations forums :
Inscription : juin 2011
Messages : 20
Points : 3
Points : 3
ERF ! C'était effectivement le nom de la variable...

Je crois que je vais arrêter de faire mon Englych bicose je fais tout buguer.

Merci de l'aide
7804j est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h32.


 
 
 
 
Partenaires

Hébergement Web