window.opener et formulaires

astrolab
Invité n'ayant pas de compte PHPfrance

06 nov. 2006, 22:54

bonsoir,

j'ai un projet dans lequel je gère une fonction "window.opener.getElementById('id').innerHTML = "du html";

tout se passe bien sauf dans le cas où le html renvoie un formulaire

y a t-il un problème avec les formulaires (dans cette fonction) ou bien mon problème vient d'ailleurs ?

Invité
Invité n'ayant pas de compte PHPfrance

08 nov. 2006, 14:52

personne n'a une idée pour m'expliquer d'où vient le bug ?

Mammouth du PHP | 19672 Messages

08 nov. 2006, 15:09

Sans la moindre ligne de code pour illustrer ta question, personne ne pourra répondre sérieusement :-k
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Invité
Invité n'ayant pas de compte PHPfrance

08 nov. 2006, 23:33

et bien voilà !

j'ai une page qui contient un lien href. J'ouvre une popup depuis ce lien.
La popup contient un formulaire avec un champs textearea dans lequel je saisis du contenu texte ou bien des balises html, puis j'envoie le contenu à ma page parente : window.opener.document.getElementById('idparent').innerHTML="le contenu de la popup";

tout se passe bien sauf lorsque je passe une balise <form>...je peux afficher des balises <input> mais pas de <form>...rien ne s'affiche dans la page parente...je voulais savoir d'où venait le problème...

Invité
Invité n'ayant pas de compte PHPfrance

09 nov. 2006, 00:08

je viens de lire quelque part sur Internet que c'etait du à un problème avec IE...avec Firefox, ca marche parait-il..

mais peut-on contourner la difficulté ?

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

09 nov. 2006, 00:47

On va la refaire... En un peu plus fort... :roll:
Sans la moindre ligne de code pour illustrer ta question,
personne ne pourra répondre sérieusement
:-k

Invité
Invité n'ayant pas de compte PHPfrance

09 nov. 2006, 22:44

ma page parente :
<td id ="id">
  <a href="#" onClick="window.open('form.php', 'Fenetre_Edition', 'width=700, height=600, top=0, left=0')">
    <img align="middle" border="0" src="editer.gif">
  </a>
</td>
le pop up (fichier form.php):
<script language="javascript">
function submitform()
{
window.opener.document.getElementById('id').innerHTML=document.forms.test.champ.value;
window.close();
}
</script>
<form name="test" onsubmit="return submitform();">

<textarea name="champ" value=""></textarea>
<input type="submit" name="submit" value="ok">
</form>
VOILA !

Mammouth du PHP | 1511 Messages

09 nov. 2006, 23:26

Et quelle est l'erreur qui se passe précisement?
@+

Invité
Invité n'ayant pas de compte PHPfrance

09 nov. 2006, 23:29

je ne peux pas passer de balise <form> dans le textearea...il refuse d'afficher

Mammouth du PHP | 1776 Messages

09 nov. 2006, 23:47

C'est pas un erreur de navigateur, mais plutôt de celle du programmeur... :roll:
Faut ptetre sélectionner la fenêtre dans laquelle tu envoies les données, ça se devine pas :?

Invité
Invité n'ayant pas de compte PHPfrance

10 nov. 2006, 10:44

SI CA SE DEVINE !

window.opener envoit les données à la fenetre parente...c'est sa fonction !

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

10 nov. 2006, 12:23

Eh, faut pas s'ennerver. :roll:

Je suis désolé d'insister mais je pense que ça reste une erreur de développement

Dans ce bout de code

Code : Tout sélectionner

document.forms.test.champ.value
tu utilises le mot clé "forms" qui est un tableau contenant les différent formulaire de la page puis l'id "test" qui est lui même un formulaire. Ce qui est incompatible.

Soit tu écris

Code : Tout sélectionner

document.forms['test'].champ.value
Soit tu préfère

Code : Tout sélectionner

document.test.champ.value
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Invité
Invité n'ayant pas de compte PHPfrance

10 nov. 2006, 22:42

cela ne change rien !
quelle que soit la formule, le problème persiste...
cela dit, j'ai déjà trouvé le problème évoqué dans da'utres forums en faisant une recherche sur google...mais voilà, je voulais savoir d'où cela pouvait bien venir

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

10 nov. 2006, 22:59

Il y a un truc que je ne comprend pas :-k

Pourquoi veut tu mettre quelque chose dans la fenetre parente ... depuis la fenetre parente :shock:

window.opener s'utilise dans la fenetre fille ;)
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Invité
Invité n'ayant pas de compte PHPfrance

10 nov. 2006, 23:37

mais j'utilise window.opener dans la fenetre fille (le pop up)

la fenetre parente ne fait que contenir le lien href depuis lequel j'ouvre le pop up