Hello,

Description de la page :
J'ai une page avec un formulaire pour envoyer une image, et une liste d'image qui s'affiche sous ce formulaire (les images que j'ai chargé avec le formulaire). A coté de chaque image j'ai un lien "Supprimer" pour retirer une image de cette liste.

Mon procédé
J'utilise une iframe comme cible de ce formulaire.

Dans l'iframe, je traite en PHP l'image reçue. Et j'utilise ensuite Javascript pour afficher l'image nouvellement uploadée sur ma page. Toujours en JS, j'ajoute un lien permettant de supprimer cette image.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
var a = top.document.createElement('a');
a.href = '#void';
a.onclick = function () { alert('ok'); }
alert(a.getAttribute('onclick'));
li.appendChild(a);
Mon problème :
Si j'ajoute une seule image, ça marche bien ; mon image s'affiche et le lien "Supprimer" s'ajoute et fonctionne.
Mais si j'ajoute 2 images à la suite, je perds le onclick du 1er lien crée (le 2e fonctionne).

Si j'ai bien compris, c'est parce que mon code ci-dessus fait que je déclare ma fonction dans mon iframe. Donc quand celle-ci est rechargée à nouveau, je perds ma fonction, et mon onclick.

J'ai essayé de modifier directement l'attribut HTML onclick du lien :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
a.setAttribute('onclick', \"javascript:alert('ok');\");
Mais malgré un :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
a.getAttribute('onclick');
qui affiche le bon résultat, mon onclick ne fonctionne pas (sous IE).



Quelqu'un a-t-il une idée de comment modifier le onclick, ou comment faire pour qu'il persiste dans ma fenetre principale malgré un rechargement de l'iframe?