IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

problème avec une balise <A>


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Inscrit en
    Janvier 2005
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 14
    Points : 13
    Points
    13
    Par défaut problème avec une balise <A>
    Bonjour

    Alors voila mon problème, il parais tout nul mais on a toujours pas trouver lol.

    Dans une page je modifie en dynamique les href des balises <A> de ma page, jusque la tout va bien sauf dans un cas:

    exemple : voici ma balise
    <a href="vide">http://www.developpez.net/</a>

    si j'utilise le code suivant :
    document.links[0].href = "http://www.developpez.net/forums/";

    Il met bien a jour le lien href avec la nouvelle valeur, mais il me remplace aussi "http://www.developpez.net/" par "http://www.developpez.net/forums/"

    Le problème ne se pause apparement que si la valeur entre les balise <a> et </a> commence par "http://x"

    Merci d'avance pour vos lumières

  2. #2
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 228
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 228
    Points : 8 487
    Points
    8 487
    Billets dans le blog
    17
    Par défaut
    Effectivement, c'est un bogue assez "marrant" de IE.
    Pour ceux qui veulent le reproduire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    <html>
        <head>
            <script type="text/javascript">
                function init( ) {
                    document.links[0].href = "http://<a href="http://www.developpez.net/"" target="_blank">www.developpez.net/"</a> ;
                }
            </script>
        </head>
        <body onload="init( )">
            <a href="http://www.foo.com/">http://www.foo.com/</a>
            <!--
                Sous IE on obtient :
                    <a href="http://<a href="http://www.developpez.net/">http://www.developpez.net/</a>" target="_blank">http://www.developpez.net/">http://w...oppez.net/</a></a>
                Au lieu de :
                    <a href="http://<a href="http://www.developpez.net/">http://www.foo.com/</a>" target="_blank">www.developpez.net/">http://www.foo.com/</a></a>
            -->
        </body>
    </html>
    Le label du lien prend la valeur du href attribué dynamiquement si, et seulement si, le label d'origine ressemble à une URL (débute par http:// ou www. ). Dans tous les cas le href est correctement màj.

    Voici ce que j'ai fait pour corriger le bogue :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    <html>
        <head>
            <script type="text/javascript">
                function init( ) {
                    var tmp = document.links[0].innerHTML ;
                    document.links[0].href = "http://<a href="http://www.developpez.net/"" target="_blank">www.developpez.net/"</a> ;
                    document.links[0].innerHTML = tmp ; // Je force la valeur d'origine
                }
            </script>
        </head>
        <body onload="init( )">
            <a href="http://www.foo.com/">http://www.foo.com/</a>
            <!--
                On obtient bien :
                    <a href="http://<a href="http://www.developpez.net/">http://www.foo.com/</a>" target="_blank">www.developpez.net/">http://www.foo.com/</a></a>
            -->
        </body>
    </html>

  3. #3
    Membre à l'essai
    Inscrit en
    Janvier 2005
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 14
    Points : 13
    Points
    13
    Par défaut
    Merci beaucoup

    J'avais deja en tête de faire comme ça en faite mais impossible de me rapeller comme récupérer va valeur entre les balises

Discussions similaires

  1. probléme avec une balise div
    Par ChTiRiBi dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 14/04/2010, 17h49
  2. [W3C] Problème avec une balise liste
    Par Gizmil dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 08/05/2008, 11h39
  3. Problème avec une instruction OUTER /Postgres
    Par Volcomix dans le forum Langage SQL
    Réponses: 14
    Dernier message: 21/04/2004, 16h56
  4. problème avec une requête imbriquée
    Par jaimepasteevy dans le forum Langage SQL
    Réponses: 13
    Dernier message: 05/12/2003, 10h29
  5. Problème avec une procédure stockée
    Par in dans le forum Langage SQL
    Réponses: 4
    Dernier message: 27/05/2003, 15h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo