Problème d'appel de fonction si présence de write()

Résolu
zinzin54 Messages postés 8 Date d'inscription dimanche 26 novembre 2006 Statut Membre Dernière intervention 17 octobre 2014 - 19 sept. 2010 à 12:55
zinzin54 Messages postés 8 Date d'inscription dimanche 26 novembre 2006 Statut Membre Dernière intervention 17 octobre 2014 - 19 sept. 2010 à 16:25
bonjour,

j'ai encore un petit soucis !!! j'ai une feuille principale dans laquelle je crée un iframe. dans cet iframe, j'ai une fonction que j'appelle Loaded() qui se lance au chargement de l'frame. jusque là tout va bien, la fonction s'execute. un bouton test permet d'appeler cette fonction depuis la feuille principale. J'ai ajouté dans la fonction la methode write() pour écrire dans l'iframe. à partir de ce moment la fonction Loaded() s'execute au chargement et ne peut plus être lancée avec le bouton test. c'est le write() qui pose problème. je ne sais pas pourquoi !!! j'ai cherché dans tous les sens, rien à faire. pouvez-vous m'aider ?? merci pour vos réponses.

code de la feuille principale:

<html>
<head><title>left</title>
<script type="text/javascript">

function Loaded()
{
var vartest;

vartest=0;
//window.alert(vartest);
vartest = ifrm.Test(4);
alert(vartest);
}

</script>
</head>


<FORM name="test">

</FORM>



</html>


code de l'iframe:


<html>
<head><title>left</title>
<script type="text/javascript">

function Test(index)
{
alert("variable renvoyée=" + index);

document.open();
document.write("coucou");
document.close();

return(index);

}
</script>
</head>


iframe

</html>

4 réponses

PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 16
19 sept. 2010 à 16:03
la méthode write efface la TOTALITE du document les scripts entre autre...

Tu peux par contre créer des éléments, avec la méthode document.createElement et les ajouter dans ton document avec la méthode appendChild.

Tu peux également modifier le contenu d'un élément du document en modifiant sa propriété innerHTML

;O)
3
PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 16
19 sept. 2010 à 14:54
Bonjour,
J'ai ajouté dans la fonction la methode write()
la méthode write écrit dans le flux du document et de ce fait efface le contenu de celui ci

;O)
0
zinzin54 Messages postés 8 Date d'inscription dimanche 26 novembre 2006 Statut Membre Dernière intervention 17 octobre 2014
19 sept. 2010 à 15:25
bonjour,

merci pour ta réponse mais je ne comprends pas très bien ce que tu veux dire !!! veux-tu dire qu'une fois la methode write() exécutée, il n'est plus possible de faire appel à ma fonction, Loaded en l'occurence sauf si je recharge complétement la page ??
0
zinzin54 Messages postés 8 Date d'inscription dimanche 26 novembre 2006 Statut Membre Dernière intervention 17 octobre 2014
19 sept. 2010 à 16:25
je te remercie beaucoup pour ta réponse, ça m'éclaire.
0
Rejoignez-nous