Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript
JavaScript Forum programmation JavaScript. Lire : Cours JavaScript, FAQ JavaScript, Toutes les FAQ JavaScript et Sources JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
Vieux 09/11/2009, 18h25   #1
Invité de passage
 
Arnaud Megret
Inscription : novembre 2009
Messages : 3
Détails du profil
Informations personnelles :
Nom : Arnaud Megret

Informations forums :
Inscription : novembre 2009
Messages : 3
Points : 1
Points : 1
Par défaut encodage et href='javascript'

bonjour,

Voila un sample HTML :

Code :
1
2
3
4
5
6
7
8
<html>
<body>
<script lang='javascript'>
</script>
<a href='javascript:alert("%23%21%3F")'>ici</a><br>
<a href='' onclick='alert("%23%21%3F");return false;'>ici</a>
</body>
</html>
Pkoi la chaine affichée est différentes selon les 2 cas ?
Remarque : la chaine "%23%21%31F" est la version URLencodée de #!?

Faut-il éviter l'usage href='javascript:... ?

Merci d'avance,

Arnaud
arnaud_thegreat est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/11/2009, 19h41   #2
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 29 074
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 29 074
Points : 43 300
Points : 43 300
tu donnes toi même la moitié de la réponse dans la question
dans le href le contenu de la chaine est traité comme une url...
si tu echappes la chaine pour l'url tu a le même résultat

Code :
1
2
<a href='javascript:alert(escape("%23%21%3F"))'>ici</a><br>
<a href='' onclick='alert("%23%21%3F");return false;'>ici</a>

ou à l'inverse
Code :
1
2
3
 
<a href='javascript:alert("%23%21%3F")'>ici</a><br>
<a href='' onclick='alert(decodeURIComponent("%23%21%3F"));return false;'>ici</a>
Il est en effet préférable de passer par le onclick et inhiber le href au moyen d'un return false afin de rester sur la page.
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +1. Il est actuellement 05h41.


 
 
 
 
Partenaires

Hébergement Web