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 :

[POO] Retirer les paramètres de l'URL


Sujet :

JavaScript

  1. #1
    Membre éclairé
    Inscrit en
    Octobre 2005
    Messages
    908
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 908
    Par défaut [POO] Retirer les paramètres de l'URL
    Bonjour à tous,

    comment enlever les paramètres de l'URL ?
    ex : http://www.truc.com/index.php?rerz=132456&xxx=aaa en http://www.truc.com/index.php
    J'ai essayé avec document.location.search et document.location.href sans succès...

    une p'tite aide SVP...

  2. #2
    Rédacteur
    Avatar de bigboomshakala
    Homme Profil pro
    Consultant Web .NET
    Inscrit en
    Avril 2004
    Messages
    2 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant Web .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var urlNoParam = document.location.href.replace(document.location.search,"");
    non testé, écrit à la volée, mais je pense que ça marche

  3. #3
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Ou alors :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var monURL=location.href.split('?')[0];
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  4. #4
    Membre éclairé
    Inscrit en
    Octobre 2005
    Messages
    908
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 908
    Par défaut
    ok... merci à vous 2 !

    à présent, je sais récupérer l'URL sans params...
    maintenant, comment modifier l'URL de la barre d'adresse.

    J'ai essayé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    location.href = location.href.split('?')[0];
    mais cela recharge la page.

  5. #5
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    location est objet de document :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    document.location.href="ton_url";

  6. #6
    Membre éclairé
    Inscrit en
    Octobre 2005
    Messages
    908
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 908
    Par défaut
    nan ! cela recharge la page...

  7. #7
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Ou bien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    location.replace(location.href = location.href.split('?')[0]);
    si tu ne veux pas que l'ancienne url soit dans l'historique,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    location.assign(location.href = location.href.split('?')[0]);
    sinon.
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  8. #8
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Citation Envoyé par Auteur Voir le message
    location est objet de document
    Désolé, je ne crois pas... URL est objet de document, location est un objet de window et peut être appelé directement.

    nan ! cela recharge la page...
    Ben oui, si tu changes l'url, ça recharge la page !
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  9. #9
    Rédacteur
    Avatar de bigboomshakala
    Homme Profil pro
    Consultant Web .NET
    Inscrit en
    Avril 2004
    Messages
    2 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant Web .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    location.replace(location.href.split('?')[0]);
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    location.assign(location.href.split('?')[0]);

  10. #10
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    ???
    C'est à dire BBS, j'ai mis une ânerie ? (ceci dit, ce serait pas la première !)
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  11. #11
    Membre du Club
    Inscrit en
    Janvier 2008
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 10
    Par défaut
    Si tu enlève les paramètres de ton URL, tu va être obligé de recharger la page.

    Je pense qu'une bonne question serais d abord :

    Est ce que tu as besoin du paramètre transmis dans l'URL ?

  12. #12
    Rédacteur
    Avatar de bigboomshakala
    Homme Profil pro
    Consultant Web .NET
    Inscrit en
    Avril 2004
    Messages
    2 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant Web .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Par défaut
    Citation Envoyé par Bovino Voir le message
    ???
    C'est à dire BBS, j'ai mis une ânerie ? (ceci dit, ce serait pas la première !)
    c'est juste que l'affectation du location.href est redondante avec l'assign ou le replace, donc inutile et bizarroïde (au sens ou l'affectation se produit en 1er et recharge la page, donc l'assign ou le replace ne doivent pas s'exécuter a priori. i don't know)

  13. #13
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Euh... si ça marche...

    EDIT :
    Essaye de mettre un paramètre dans l'url de la page et teste :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    location.assign(location.href.split('?')[0]+'?camarche');
    dans la console, tu verras le changement.
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  14. #14
    Membre éclairé
    Inscrit en
    Octobre 2005
    Messages
    908
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 908
    Par défaut
    bah, je suis désolé mais ma page se recharge continuellement... pas vous ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <script type="text/javascript">
    <!--
    location.replace(location.href.split('?')[0]);
    -->
    </script>

  15. #15
    Membre du Club
    Inscrit en
    Janvier 2008
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 10
    Par défaut
    Tu ne peut pas appeler ton URL avec des champs hidden si c'est juste un problème esthétique ? Sinon passe par des variables de session en php

  16. #16
    Membre éclairé
    Inscrit en
    Octobre 2005
    Messages
    908
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 908
    Par défaut
    non, je suis obligé de passer une variable en GET à l'ouverture de la page.
    Comme cette variable n'est utile qu'une seule fois et influence le reste de la page, il faut "réinitialiser" l'URL afin qu'elle soit cohérente avec la page car celle-ci utilise l'AJAX a foison...

  17. #17
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Euh... désolé, mais je ne vois pas le rapport entre Ajax et l'url ???
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  18. #18
    Membre éclairé
    Inscrit en
    Octobre 2005
    Messages
    908
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 908
    Par défaut
    bon, je vais tout expliquer.
    je développe un annuaire avec formulaire de recherche et résultats affichés via AJAX. L'URL que j'essaye de modifier est en faite une requête GET exécuté par le plugin/moteur de recherche de Firefox. Cela permet à l'utilisateur d'effectuer une requête sans même avoir encore ouvert la page... cool. Sauf qu'une fois, la page affichée avec les résultats correspondant au champ du searchEngine du navigateur, l'utilisateur est amené a rééffectuer une requête (cette fois ci via le formulaire HTML). Du coup, comme le contenu (résultats affichés) est modifié par l'intervention de l'utilisateur... l'URL du départ ne correspond plus aux résultats affichés.

    résumé :
    1/ ouverture du navigateur
    2/ 'dupond' dans le plugin de recherche -> http://xxx.xxx.xxx.xxx/?q=dupond
    3/ ouverture de la page avec les résultats de la requête
    4/ nouvelle requête via form HTML (GET q=alphonse)
    5/ actualisation de la page avec les résultats de la nouvelle requête -> l'URL reste http://xxx.xxx.xxx.xxx/?q=dupond


  19. #19
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    D'accord !
    Tu ne nous dis pas comment la seconde (puis les autres) requête est validée, mais c'est à ce moment que tu dois exécuter
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    location.replace(location.href.split('?')[0]+'?q='+nouvelle_recherche);
    Enfin... je pense !
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  20. #20
    Membre éclairé
    Inscrit en
    Octobre 2005
    Messages
    908
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 908
    Par défaut
    les recherches suivantes (via le formulaire HTML) lancent une requête AJAX retournant les résultats, ensuite le contenu est réactualisé. La page n'est donc pas rechargée !

    Par contre, je ne souhaite pas modifier l'URL pour y faire figurer la nouvelle recherche... je veux supprimer les paramètres de l'URL, la rendre vierge !

    location.replace recharge la page : ce n'est pas ce que je souhaite...

Discussions similaires

  1. [AJAX] Reprendre les paramètres d'une URL
    Par sliderman dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 21/05/2008, 14h29
  2. [SilverLight 2] Récupérér les paramètres dans l'url
    Par hazholhim dans le forum Silverlight
    Réponses: 4
    Dernier message: 19/05/2008, 21h24
  3. Récupèrer les paramètre de l'url
    Par Yoshio dans le forum MVC
    Réponses: 2
    Dernier message: 03/08/2007, 09h40
  4. Réponses: 3
    Dernier message: 31/05/2007, 02h41
  5. récupérer les paramètres dans une url
    Par asetti dans le forum ASP
    Réponses: 6
    Dernier message: 23/12/2005, 10h08

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