11548 sujets

JavaScript, DOM et API Web HTML5

hello,
Voici le problème autour duquel je tourne en rond :
Je développe un intranet en php qui comporte entre autre une page incluant en partie une page externe html.Pour cela dans un formulaire, j'ai utilisé l'objet iframe (au passage, si quelqu'un a mieux que ça, j'adhère ...) :


<FORM id=frm>
<TABLE avec attributs>
<TR>< blablabla avec 2 lignes </TR>
<TR><TD COLSPAN=4>
<IFRAME id='fra1' name='fra1' width=100% height=550 src="PageExt1.htm"> </IFRAME>
</TD></TR>
</TABLE>
</FORM>

La page PageExt1.htm contient des données à modifier. Lorsque le formulaire de cette page est validé, la page PageExt1.htm est alors remplacée par la page PageExt2.htm.

Comment faire pour que mon formulaire puisse détecter ce changement de fichier dans le frame ? J'ai beau demander le nom de la page en javascript de cette façon :
var strFrameSource = document.getElementById('fra1').src;
alert(strFrameSource);

La valeur retournée est systématiquement celle de PageExt1.htm, même quand c'est PageExt2.htm qui est affichée dans le frame.
Pourquoi ? Parce que ma page principale qui contient le fomulaire n'est pas reloadée, mais si je la reloade, le frame reloade immédiatement la page PageExt1.htm, ce qui ne m'interesse pas du tout.

Please, help !! Smiley decu

Plus généralement, si mon sauveur trouve une solution en virant les frames, je suis partante car j'ai lu que les frames sont de plus en plus contestés. J'ai essayé avec la balise <OBJECT DATA=nom du fichier>. Le pb reste le même : je n'arrive pas à récupérer le nom de ce fichier.

a+++
gégé
Modifié par gege (30 Jun 2006 - 19:06)
Bonjour gege et bienvenue,

En tant que modérateur, je me dois de te faire remarquer que tu n'as malheureusement pas respecté l'une des Règles de base du forum qui est d'afficher les codes et exemples proprement à l'aide des boutons [ code]... ici ton code HTML, CSS, PHP, etc.[ /code] (sans espace).

Je te remercie par avance de bien vouloir éditer ton message afin de le rendre conforme à cette règle. Smiley cligne

Bonne continuation Smiley smile