Page 1 sur 1

aide

Posté : 30 avr. 2007, 12:02
par princesse
salut
si je tappe sur "ok" on doit aller a "principale1.html"
quel es l'erreur

Code : Tout sélectionner

<script> window.status = "bienvenue"; function deconnection() { if (confirm("Voulez vous vraiment se déconnecter")==True) { window.location.replace( "principale1.html"); } } </script> <form action="choix_ens.html" method="get"> <P align="center"> <strong> <a href="#" onClick="deconnection()"> <font color="#FFFFFF" size="5">Déconnection</font></a></strong></P> </form>

Posté : 30 avr. 2007, 14:09
par Cyrano
Modération :
princesse, afin d'améliorer la lisibilité de ton message,
pense à utiliser les balises [code] ou [php] (selon le langage utilisé).

Elles sont disponibles au-dessus de la zone de saisie de ton message
lorsque tu postes un nouveau message.

D'autre part :
Merci d'utiliser un titre clair et qui correspond bien à ta demande.
Les titres contenant "HELP", "Aidez-moi !" n'apportent rien à la compréhension de ton problème.
Par ailleurs, nous savons déjà par ton message que tu as besoin d'aide.

Enfin : le multi-postage est strictement interdit !!

Des indications sont disponibles sur la manière de mettre en forme vos messages dans la FAQ

Posté : 30 avr. 2007, 14:20
par Cyrano
Enfin bon, pour la réponse, c'est peut-être subtil, mais il manque un élément dans ton gestionnaire d'évènement, ce qui fait que la fonction appelée ne peut jamais s'exécuter.

On va commencer par faire un grand ménage dans ton code en virant l'inutile et en mettant ça un peu aux normes. Ça donne ceci :

Code : Tout sélectionner

<script type="text/javascript"> /* <![CDATA[ */ window.status = "bienvenue"; function deconnection() { if (confirm("Voulez vous vraiment se déconnecter")==True) { window.location.replace( "principale1.html"); } } /* ]]> */ </script> <p style="text-align: center; font-weight: bold; color: #fff; font-size: 24px;"><a href="#" onClick="deconnection(); return false;">Déconnection</a></p>
Comme il s'agit d'un lien hyper-texte, tu n'as nullement besoin de mettre ça dans un formulaire, donc la balise <form> saute. Ensuite, utilise des CSS au lieu de la balise <font>, ça éclaircit un peu.

Enfin, et c'est l'élément manquant : dans le gestionnaire d'évènement, j,ai rajouté "return false;" : pourquoi ? Parce que sinon, en cliquant sur le lien, la page se recharge vers le lien indiqué dans l'attribut href, en l'occurence "#", en clair, la page se recharge. Mais du coup, on est plus dans la même page au sens strict, l'url est la même, mais comme il y a eu rechargement, la script appelé n'est pas exécuté. Je ne sais pas si tu saisis le principe général, ça peut paraître un peu abscons :-k
On empèche le navigateur de suivre ce lien avec "return false" tout simplement et ça permet à la fonction JavaScript de s'exécuter normalement dans... la page en cours.