Acces aux elements d'une iframe - HTML/CSS - Programmation
MarshPosté le 16-08-2010 à 14:46:31
Bonjour,
Je cherche a acceder a un element d'une iframe, en l'occurence la valeur d'un champ de saisie. J'ai cherche un long moment sans trouver de solution a mon probleme.
Je dispose de deux pages. Le code a ete volontairement simplifie.
Index.php cree l'iframe en javascript et tente de l'afficher a l'ecran a l'aide d'un alert().
Code :
<body>
<divid='frame'>
</div>
</body>
<scripttype="text/javascript">
var iframe = "<iframe id='idframe' name='frame' src='iframe.php'></iframe>";
Lorsque j'execute ma page Index.php, rien ne se passe.
Apres avoir longtemps cherche pour resoudre le probleme, j'ai trouve une solution. Le code ci-dessus fonctionne a la condition que je fasse, juste avant mon alert, un document.getElementById('idframe'), sans avoir besoin de recuperer la valeur ni d'en faire quoi que ce soit d'ailleurs.
Procedant ainsi, mon alert() me renvoit le contenu du champ auquel je tente d'acceder.
Cette solution me convient. Toutefois, je souhaiterais comprendre pourquoi il a ete necessaire de proceder ainsi pour parvenir au resultat souhaite. Quelqu'un pourrait-il me dire pourquoi l'execution de document.getElementById('idframe') est necessaire avant de pouvoir acceder a un champ de l'iframe ?
Marsh Posté le 16-08-2010 à 14:46:31
Bonjour,
Je cherche a acceder a un element d'une iframe, en l'occurence la valeur d'un champ de saisie. J'ai cherche un long moment sans trouver de solution a mon probleme.
Je dispose de deux pages. Le code a ete volontairement simplifie.
Index.php cree l'iframe en javascript et tente de l'afficher a l'ecran a l'aide d'un alert().
Iframe.php cree le contenu de l'iframe.
Lorsque j'execute ma page Index.php, rien ne se passe.
Apres avoir longtemps cherche pour resoudre le probleme, j'ai trouve une solution. Le code ci-dessus fonctionne a la condition que je fasse, juste avant mon alert, un document.getElementById('idframe'), sans avoir besoin de recuperer la valeur ni d'en faire quoi que ce soit d'ailleurs.
Procedant ainsi, mon alert() me renvoit le contenu du champ auquel je tente d'acceder.
Cette solution me convient. Toutefois, je souhaiterais comprendre pourquoi il a ete necessaire de proceder ainsi pour parvenir au resultat souhaite. Quelqu'un pourrait-il me dire pourquoi l'execution de document.getElementById('idframe') est necessaire avant de pouvoir acceder a un champ de l'iframe ?
Je vous remercie par avance.