Modifier une variable (javascript)
Fermé
KeyBoss
-
20 févr. 2001 à 17:39
KeyBoss Messages postés 24 Date d'inscription samedi 3 février 2001 Statut Membre Dernière intervention 4 mars 2001 - 21 févr. 2001 à 16:06
KeyBoss Messages postés 24 Date d'inscription samedi 3 février 2001 Statut Membre Dernière intervention 4 mars 2001 - 21 févr. 2001 à 16:06
Si une variable est declaré dans la frame du haut par ex, est-il possible de la modifier avec un evenement dans la frame du bas ?
A voir également:
- Modifier une variable (javascript)
- Modifier dns - Guide
- Modifier liste déroulante excel - Guide
- Modifier une story facebook - Guide
- Comment modifier un pdf - Guide
- Telecharger javascript - Télécharger - Langages
2 réponses
PhP
Messages postés
1770
Date d'inscription
lundi 11 décembre 2000
Statut
Membre
Dernière intervention
23 décembre 2009
606
21 févr. 2001 à 14:31
21 févr. 2001 à 14:31
Hi,
La réponse est oui (en doutais-tu ?)
A ce propos tu peux également aller voir la réponse que j'ai faite à
GoldJoker il y a qlques temps.
Voici un exemple concret :
J'ai une page de jeu de cadres appelée cadre.htm avec à l'intérieur
2 cadres : haut.htm et bas.htm
Page cadre.htm :
______________
<html>
<head>
<title>cadre</title>
</head>
<frameset rows="50%,50%">
<frame name="haut" target="bas" src="haut.htm" >
<frame name="bas" src="bas.htm">
<noframes>
<body>
<p>Cette page utilise des cadres, mais votre navigateur ne les prend pas en charge. </p>
</body>
</noframes>
</frameset>
</html>
Page haut.htm :
_____________
<html>
<head>
<title>Page haut.htm</title>
<script language="JavaScript">
<!--
var titre="PAS ENCORE MODIFIE PAR BAS.HTM"
// -->
</script>
</head>
<body>
Page haut.htm
<br><br>
Au départ la variable [titre] est initialisée avec la chaîne "PAS ENCORE MODIFIE PAR BAS.HTM"
<form>
<input type="button" value="Voir le contenu de la variable globale [titre]" onclick="alert('Titre = '+titre)">
</form>
</body>
</html>
Page bas.htm :
____________
<html>
<head>
<title>Page bas.htm</title>
<script language="JavaScript">
<!--
// Modifie la variable globale titre définie dans la page haut.htm
function changeTitre(txt)
{
window.parent.haut.titre=txt;
}
// -->
</script>
</head>
<body>
Page bas.htm
<form id="formulaire">
Entrer le nouveau contenu pour la variable [titre] déclarée dans haut.htm
<input type="text" size=20 name="texte">
<input type="button" value="Ok" onclick="changeTitre(document.forms['formulaire'].texte.value)">
<br><br>
Cliquer sur le bouton de la page haut.htm pour voir le résultat après avoir valider avec Ok.
</form>
</body>
</html>
Explication :
tout réside dans window.parent.haut.titre= ...
Ici on utilise la propriété .parent de la fenêtre en cours qui renvoie d'habitude la fenêtre elle-même. Mais avec les cadres c'est la fenêtre qui contient la description du jeu de cadres qui est retournée.
Donc une fois qu'on est dans la fenêtre des cadres on a accès au nom des cadres, ici "haut".
window.parent : pointe vers la fenêtre contenant le jeu de cadres
window.parent.haut : pointe vers le cadre "haut"
On peut ensuite accèder tout naturellement à ttes les varaibles globales, ttes les propriétés et ts les objets de la fenêtre située dans le cadre "haut".
window.parent.haut.titre : référence la variable dans la page haut.htm
Simple non ? {:)
@+
philippe
La réponse est oui (en doutais-tu ?)
A ce propos tu peux également aller voir la réponse que j'ai faite à
GoldJoker il y a qlques temps.
Voici un exemple concret :
J'ai une page de jeu de cadres appelée cadre.htm avec à l'intérieur
2 cadres : haut.htm et bas.htm
Page cadre.htm :
______________
<html>
<head>
<title>cadre</title>
</head>
<frameset rows="50%,50%">
<frame name="haut" target="bas" src="haut.htm" >
<frame name="bas" src="bas.htm">
<noframes>
<body>
<p>Cette page utilise des cadres, mais votre navigateur ne les prend pas en charge. </p>
</body>
</noframes>
</frameset>
</html>
Page haut.htm :
_____________
<html>
<head>
<title>Page haut.htm</title>
<script language="JavaScript">
<!--
var titre="PAS ENCORE MODIFIE PAR BAS.HTM"
// -->
</script>
</head>
<body>
Page haut.htm
<br><br>
Au départ la variable [titre] est initialisée avec la chaîne "PAS ENCORE MODIFIE PAR BAS.HTM"
<form>
<input type="button" value="Voir le contenu de la variable globale [titre]" onclick="alert('Titre = '+titre)">
</form>
</body>
</html>
Page bas.htm :
____________
<html>
<head>
<title>Page bas.htm</title>
<script language="JavaScript">
<!--
// Modifie la variable globale titre définie dans la page haut.htm
function changeTitre(txt)
{
window.parent.haut.titre=txt;
}
// -->
</script>
</head>
<body>
Page bas.htm
<form id="formulaire">
Entrer le nouveau contenu pour la variable [titre] déclarée dans haut.htm
<input type="text" size=20 name="texte">
<input type="button" value="Ok" onclick="changeTitre(document.forms['formulaire'].texte.value)">
<br><br>
Cliquer sur le bouton de la page haut.htm pour voir le résultat après avoir valider avec Ok.
</form>
</body>
</html>
Explication :
tout réside dans window.parent.haut.titre= ...
Ici on utilise la propriété .parent de la fenêtre en cours qui renvoie d'habitude la fenêtre elle-même. Mais avec les cadres c'est la fenêtre qui contient la description du jeu de cadres qui est retournée.
Donc une fois qu'on est dans la fenêtre des cadres on a accès au nom des cadres, ici "haut".
window.parent : pointe vers la fenêtre contenant le jeu de cadres
window.parent.haut : pointe vers le cadre "haut"
On peut ensuite accèder tout naturellement à ttes les varaibles globales, ttes les propriétés et ts les objets de la fenêtre située dans le cadre "haut".
window.parent.haut.titre : référence la variable dans la page haut.htm
Simple non ? {:)
@+
philippe
KeyBoss
Messages postés
24
Date d'inscription
samedi 3 février 2001
Statut
Membre
Dernière intervention
4 mars 2001
2
21 févr. 2001 à 16:06
21 févr. 2001 à 16:06
j'ai tout compris :)
En fait mon probleme, c'est tout ces chemin, ces adresses ou chepakoi, faudrait faire une mega reference ou y'a tout les elements, paske je sais jamais comment acceder a un element, dans le cours javascript (ki je rapelle, n'est pas complet) y'a juste un petit tableau...
En fait mon probleme, c'est tout ces chemin, ces adresses ou chepakoi, faudrait faire une mega reference ou y'a tout les elements, paske je sais jamais comment acceder a un element, dans le cours javascript (ki je rapelle, n'est pas complet) y'a juste un petit tableau...