onload dans un élément d'un div chargé dynamiquement

onload dans un élément d'un div chargé dynamiquement - HTML/CSS - Programmation

Marsh Posté le 16-06-2008 à 18:43:45    

Bonjour,
 
Quand on charge le contenu d'un div par un appel asynchrone (ajax) et qu'il y a du javascript dans le code, est ce que c'est normal que les éléments javascript dans un onload ne soient pas executés dès que l'on insère le code téléchargé dans le div?
 
Si oui, avez vous une méthode générique pour pallier à ce problème?
Merci


Message édité par milootooloo le 16-06-2008 à 18:45:11
Reply

Marsh Posté le 16-06-2008 à 18:43:45   

Reply

Marsh Posté le 16-06-2008 à 18:53:55    

je comprends rien :/
dans ajax y a forcement javascript donc tu auras toujours du js dans ton code et ta phrase n a aucun sens
autre truc que je comprends pas: le onload c est juste au chargement de la page donc toute methode ajax ne relancera jamais ton onload
sois un peu plus precis


---------------
« The enemy is the gramophone mind, whether or not one agrees with the record that is being played at the moment. » — George Orwell
Reply

Marsh Posté le 18-06-2008 à 09:19:11    

Bon, je vais essayer d'etre plus clair.
J'ai un squelette de page en html et javascript qui permet de charger certains éléments dynamiquement. Le contenu d'un de ces éléments que je télécharge contient un script en javascript qui est sencé se lancer au chargement (du moins si il était chargé séparément, le onload devrais s'activer). C'est donc normal que ce script ne se lance pas?

Reply

Marsh Posté le 18-06-2008 à 10:07:03    

milootooloo a écrit :

Bon, je vais essayer d'etre plus clair.
J'ai un squelette de page en html et javascript qui permet de charger certains éléments dynamiquement. Le contenu d'un de ces éléments que je télécharge contient un script en javascript qui est sencé se lancer au chargement (du moins si il était chargé séparément, le onload devrais s'activer). C'est donc normal que ce script ne se lance pas?


NON rien avoir, ajax n'a rien à avoir avec le chargement d'un page.
 
Surtout que là, tu ne fais que récupérer du code HTML d'une page, et tu l'injecte à l'intérieur de ta page  (genre dans un div). Et je peux t'assurer que les onload="" ne s'executerons pas, puisqu'on est pas en presence d'un chargement de page normal.
 
Tu peux très bien au pire, mettre une balise script
 

Code :
  1. <script >le code ICI</script>


et je crois qu'il sera exécuté si tu intègre ton contenu dans un div ou autre balise
 

Reply

Marsh Posté le 18-06-2008 à 10:24:16    

Ha ok, mais je crois que ca ne marche pas non plus. Je testerais pour etre sur et je vous dirais.

Reply

Marsh Posté le 18-06-2008 à 14:58:13    

juste une question:
pourquoi tu fous pas ton script a la fin de ta requete ajax ?


---------------
« The enemy is the gramophone mind, whether or not one agrees with the record that is being played at the moment. » — George Orwell
Reply

Marsh Posté le 18-06-2008 à 15:43:00    

mIRROR a écrit :

juste une question:
pourquoi tu fous pas ton script a la fin de ta requete ajax ?


 
 
Bah j'y avais pensé, mais si il n'y a pas de script dans le resutat de la requete, je ne voulais pas executer mon script pour rien.


Message édité par milootooloo le 18-06-2008 à 15:43:16
Reply

Marsh Posté le 18-06-2008 à 15:46:38    

ouais mais ca c ets un detail
toi tu sais a l avance les elements potentiels qui passent par ta requete
c est juste un if quoi


---------------
« The enemy is the gramophone mind, whether or not one agrees with the record that is being played at the moment. » — George Orwell
Reply

Marsh Posté le 18-06-2008 à 15:54:44    

Ouais c'est vrai. Je crois que je vais faire comme ca.
Merci du conseil :)

Reply

Marsh Posté le 18-06-2008 à 15:55:18    

A force de répondre a tous mes messages, mon projet va finir par se dessiner dans ta tête :p

Reply

Marsh Posté le 18-06-2008 à 15:55:18   

Reply

Marsh Posté le 18-06-2008 à 15:56:12    

héhé [:kbchris]


---------------
« The enemy is the gramophone mind, whether or not one agrees with the record that is being played at the moment. » — George Orwell
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed