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 :

Récupérer le nom de la page courante


Sujet :

JavaScript

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 4
    Points : 1
    Points
    1
    Par défaut Récupérer le nom de la page courante
    Bonjour,

    Je souhaiterais, dans une page en html pur (sans php), récupérer le nom de cette page, c’est à dire virer de son url tout ce qui précède son nom (toute les hiérarchies de répertoires http://www… etc), virer également son extension (.htm, .html, .php etc…) et tout ce qui suit s’il y a un passage d’arguments ( ?…).

    S'il y a des caractères de type séparateurs de mots ("%20", "_"; "-"; "."), les virer également.

    Lorsque je suis sur la page h**p://www.monsite/repertoire/sousrep/mapage_dont_je_veux_le_nom.html ?a=blablabla je voudrais récupérer
    mapage dont je veux le nom

    Je n’ai rien trouvé sur le forum ni sur le Net (sauf la même question en asp) et il semble que les navigateurs renvoient généralement l’url complète sauf Firefox qui ne renvoi que le nom de la page (mais je ne sais même pas quel objet contient cette information).

    Avec mes remerciements

  2. #2
    Expert éminent
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Points : 8 339
    Points
    8 339
    Par défaut
    Salut !

    alors, il y a par exemple ceci que tu pourrais faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    var nom = window.location.pathname;
    nom = nom.split("/");
    nom = nom[nom.length - 1];
    nom = nom.substr(0, nom.lastIndexOf("."));
    nom = nom.replace(new RegExp("(%20|_|-)", "g"), "");
    Lire aussi les Cours JavaScript

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Bonsoir Swoög
    Quelle vitesse de réponse.
    Je regarde cela
    Merci

  4. #4
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Re bonsoir,

    Tests avec firefox sous Windows et sous Linux - Ok
    Test avec Konqueror - Ok
    Test IE - Ok (pas Ok, semble t'il, avec IE6 SP1)

    Semble ne pas fonctionner avec Lynx

    Vous êtes ici : <script type="text/javascript">
    var nom = window.location.pathname;
    nom = nom.split("/");
    nom = nom[nom.length - 1];
    nom = nom.substr(0, nom.lastIndexOf("."));
    nom = nom.replace(new RegExp("(%20|_|-)", "g"), " ");
    document.write(nom);</script>

    Merci

  5. #5
    Expert éminent
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Points : 8 339
    Points
    8 339
    Par défaut
    Lynx ne supporte simplement pas le Javascript à ma connaissance XD t'attend pas trop à ce que ça marche mdr

  6. #6
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Bonjour Swoög

    Puis-je abuser et te demander comment récupérer le nom de la hiérarchie précédente ("sousrep" dans l'exemple h**p://www.monsite/repertoire/sousrep/mapage_dont_je_veux_le_nom.html ?a=blablabla) et le principe à appliquer pour récupérer les autres hiérarchies en remontant jusqu'au domaine, le nombre de hiérarchies (la taille du tableau généré par split) étant quelconque (inconnu) ?

    D'autre part, dans un nom récupéré, comment éliminer les espaces éventuels qui pourraient commencer ou terminer la chaîne de caractère (" une chaîne de caractères " > "une chaîne de caractères" ).

    Cordialement

  7. #7
    Expert éminent
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Points : 8 339
    Points
    8 339
    Par défaut
    Il te suffit de justement faire un split puis de parcourir ton tableau à l'envers :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    function parseURL(var URL)
    {
       if(URL.substr(0, 7) == 'http://';
       URL = URL.substr(7, URL.length);
       return URL.split(/\//g);
    }
    pour l'utiliser :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var parsed = parseURL(window.location.href); //exemple
    for(var i = 0; i < parsed.length; ++i) alert("parsed[" + i + "] : " + parsed[i]);

    pour enlever les caractères blancs au début & à la fin d'une chaîne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    value = value.replace(/^\s*(\S.*\S|\S)\s*$/, "$1");
    la casse est importante

Discussions similaires

  1. Nom de la page courante en jsp
    Par kitov dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 07/10/2011, 10h46
  2. Récupérer le nom de la page courante
    Par DJuL- dans le forum ASP.NET
    Réponses: 3
    Dernier message: 04/07/2007, 12h29
  3. ASP - Nom de la page courante sans extension
    Par Laurent91300 dans le forum ASP
    Réponses: 3
    Dernier message: 07/10/2005, 08h52
  4. Récupérer le nom de la base courante
    Par Mr N. dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 06/10/2004, 11h34
  5. Réponses: 3
    Dernier message: 07/05/2004, 10h01

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