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 :

Avoir une partie d'URL


Sujet :

JavaScript

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Développeur web
    Inscrit en
    Mars 2014
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2014
    Messages : 11
    Points : 8
    Points
    8
    Par défaut Avoir une partie d'URL
    Bonjour,
    Voilà, ma question est assez simple, la réponse peut-être un peu moins: pour une URL de type hhhhttp://lesite.com/catégorie?ville=xxxx&adresse=yyyy"
    "yyyy" étant une saisie d'internaute, donc variable. Je voudrais récupérer cette variable en javascript.
    J'avais commencé comme ceci: window.location.search > ?ville=xxxx&adresse=yyyy += .substring(1) > ville=xxxx&adresse=yyyy += split('&') >
    Array [ "ville=xxxx", "adresse=laSaisie" ]
    Je pourrais faire window.location.search.substring(1).split('&')[1].substring(8) pour ne garder que ce qui suit après le signe égal d'adresse MAIS, je voudrais ne veux pas utiliser [1] car peut-être un jour Adresse sera en indice 0 ou encore 4 par exemple. Un deuxième MAIS est que je ne veux pas utiliser [8] pour supprimer "adresse=" (8 caractères) car un jour Adresse pourrait s'appeler "location=" ou autres... (chaîne de caractères plus, ou moins longue).

    La solution serait-elle de faire une recherche approximative en parcourant le tableau ?

    J'ai essayé:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if (window.location.search.substring(1).split('&').indexOf("adresse=rueLappe") > -1) {
        alert("ok!")
    } else {
        alert("bad!")
    }
    Qui me renvoie "ok!"
    Et quand dans l'indexOf je mets ("adresse=") ça me renvoie "bad!". J'ai essayé ("adresse="%) mais çe ne passe pas lol

    Comment avoir "yyyy" qui est une saisie de l'internaute, merci à vous.

  2. #2
    Expert éminent
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Points : 9 127
    Points
    9 127
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    function getParameterByName(name) {
        name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
        var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
            results = regex.exec(location.search);
        return results === null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
    }
    //Usage:
     
    var prodId = getParameterByName('prodId');

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Développeur web
    Inscrit en
    Mars 2014
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2014
    Messages : 11
    Points : 8
    Points
    8
    Par défaut
    Merci Sekaijin.
    Mais je ne comprends pas trop, ça fait que 4 mois que je code, je voulais peut-être quelque chose de plus simple ou de l'explication à l’appui.
    Un peu d'indulgence et d'explication pour ce code merci

  4. #4
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 959
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 959
    Points : 44 130
    Points
    44 130
    Par défaut
    Bonjour,
    peut être plus abordable !?!
    Comment récupérer les paramètres passés dans une URL ?

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Développeur web
    Inscrit en
    Mars 2014
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2014
    Messages : 11
    Points : 8
    Points
    8
    Par défaut
    A merveille NoSmoking, merci. J'ai tout capté, à part une chose, peut-être pourras-tu me l'expliquer; Pourquoi la boucle For ne retourne que "bastille" pour: ?subscribe=False&address=bastille
    Pourquoi pas "False": à quel moment ça choisis cette valeur à retourner donc?

    Code concerné:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    var nom=[];
    var valeur=[];
    param = window.location.search.slice(1,window.location.search.length);
    first = param.split("&");
    for(i=0;i<first.length;i++){
        second = first[i].split("=");
        nom[i] = second[0];
        valeur[i] = second[1];
    }
    Merci

  6. #6
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 959
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 959
    Points : 44 130
    Points
    44 130
    Par défaut
    En fait tu récupères deux tableaux
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    nom  ->   ['subscribe','address'];
    valeur -> ['False',    'bastille'];
    à toi dans faire bon usage

Discussions similaires

  1. [RegEx] Recuperer une partie d'url
    Par aurelien083 dans le forum Langage
    Réponses: 3
    Dernier message: 19/03/2008, 14h39
  2. cacher une partie d'url
    Par rgdu86 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 11/03/2008, 09h54
  3. Comment extraire une partie d'URL avec REGEX?
    Par STB_Fk dans le forum Langage
    Réponses: 2
    Dernier message: 24/01/2007, 12h59
  4. avoir une partie d'une chaine de caractère
    Par 18Marie dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 22/11/2006, 10h01
  5. [PHP-JS] [URL] Changer une partie d'URL
    Par murrigane dans le forum Langage
    Réponses: 4
    Dernier message: 19/05/2006, 13h17

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