Discussion: js dans iframe
Afficher un message
Vieux 30/06/2007, 15h03   #7
ASM
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: js dans iframe

Olivier Masson a écrit :
> Bonjour,
>
> j'ouvre une page edition.php dans une page à l'aide d'une iframe,


Là ça veut rien dire ...

Tu veux sans doute dire que tu ouvres 'edition.php' dans une iframe ?

> au moyen de mootools.


Aye !

> La page qui apparait doit exécuter du javascript dès son lancement (cad
> son apparition dans ce cas) :


et comment est-ce lancé ? (le code de lancement ?)

> document.forms[0].ville.options[<?php echo $selected1 ?>].selected = true;


et pourquoi pas simplement :
document.forms[0].ville.selectedIndex = <?= $selected1 ?>;

> ajout(document.forms[0].ville.options[<?php echo $selected1
> ?>].value,'categorie');
> document.forms[0].categorie.options[<?php echo $selected2 ?>].selected =
> true;
>
> La fonction ajout() est lu dans la page maitre et est donc bien reconnue


Alors, avec le code que tu indiques,
ajout(blabla)
elle ne devrait pas être lancée (depuis l'iframe) !
Normalement la console de FF devrait dire que 'ajout' est inconnu
.... sauf à ce que tu aies *aussi* une variable ou fonction 'ajout' dans
le JS de 'edition.php' ... ? !

Depuis 'edition.php' ouverte dans l'iframe, son JS devrait être :
parent.ajout(parent.monIframe.document.forms[0] ... blabla);
si l'iframe a un nom (ici : 'monIframe')


> (par exemple si je la place dans un onChange).


et il est où ce onchange ? iframe ? page principale ?

> Par contre, pas moyen d'executer ces 3 lignes à l'apparition de l'iframe
> : le js dans l'entete du fichier edition.php est zappé (j'ai testé en
> faisant des erreurs de syntaxe, qui ne sont pas détectées) et si je
> place le code js directement dans le body de edition.php, même problème
> (le js n'est même pas lu par le navigateur puisqu'il ne détecte pas, là
> non plus, l'erreur de syntaxe).


mets-y au moins une simple alert('vu') pour voir à voir ...
(et au début du JS et à la fin)

FF t'ouvre le code-source de cet iframe ?
et tout y est OK ? le JS étoussa ...

> Hum... si une personne a compris, bravo et merci.


Tout ça à vue de nez n'est que du bête JS qui n'a aucun besoin d'Ajax ni
de biblis ...


Depui une frame ou iframe :
- accéder à une fonction de la pagee principale :
parent.mafonction();
- accéder à une fonction de la page chargée dans le cadre :
mafonction();

Depuis la page principale :
- accéder à une fonction de la pagee principale :
mafonction();
- accéder à une fonction de la page chargée dans le cadre :
- si l'iframe a un nom :
parent.monIframe.mafonction();
- si elle n'a pas de nom :
parent.frames[0].mafonction();
- si l'iframe a un id :
document.getElementById('monIframe').mafonction();
... ne fonctionne pas ... !



--
Stephane Moriaux et son (moins) vieux Mac
  Réponse avec citation
 
Page generated in 0,06091 seconds with 9 queries