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 :

Passer un paramètre html en JS


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2008
    Messages : 168
    Par défaut Passer un paramètre html en JS
    Bonjour,
    Je suis loin d'être expérimenté en JS.

    Dans un script html j'appelle un script JS.
    Pour afficher le script html dans mon navigateur je tape dans la barre d'adresse http://www.rudyv.be/VTT/Map.html?map=180822R.xml

    Une des lignes JS est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var runLayer = omnivore.gpx('URL')
    Comment faire en sorte que URL soit égal à 180822R.xml ?
    En d'autres termes comment passer le paramètre situé après ?map= à JS ?

    Je suppose qu'il faut utiliser getElementById mais je fais probablement une erreur de syntaxe car ça ne fonctionne pas.
    Merci de me donner la syntaxe correcte.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Une (simple) recherche sur le web : "Récupérer en JavaScript les paramètres GET d'une URL"

    Code JavaScript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    function getUrlParameter(name) {
        name = name.replace(/[\[]/, '\\[').replace(/[\]]/, '\\]');
        var regex = new RegExp('[\\?&]' + name + '=([^&#]*)');
        var results = regex.exec(location.search);
        return (results === null)? '' : decodeURIComponent(results[1].replace(/\+/g, ' '));
    };

    Code JavaScript : Sélectionner tout - Visualiser dans une fenêtre à part
    var runLayer = omnivore.gpx( getUrlParameter('map') );

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2008
    Messages : 168
    Par défaut
    Avant de poser la question j'ai fait une recherche Google et j'ai effectivement trouvé des fonctions comme celle que tu donnes.
    Je pensais qu'on pouvait faire plus simple, qu'il y avait une fonction dédiée dans JS.
    Merci beaucoup pour le code, je vais essayer mais j'avoue que je ne comprends pas à quoi servent ces 4 lignes.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2008
    Messages : 168
    Par défaut
    Ça fonctionne très bien, encore merci.

  5. #5
    Invité
    Invité(e)
    Par défaut
    tu ne l'as pas précisé...
    ... mais si tu utilises PHP, on peut aussi récupérer la valeur en PHP (coté serveur, donc), et l'injecter "en dur" dans le code JavaScript :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php $map = (!empty($_GET['map']))? $_GET['map'] : ''; ?>
    Code JavaScript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var map = '<?php echo $map; ?>'; // il faut mettre des '....' autour (chaine)
    var runLayer = omnivore.gpx( map );
    Ou :
    Code JavaScript : Sélectionner tout - Visualiser dans une fenêtre à part
    var map = <?php echo json_encode($map); ?>; // PAS de '....' ici ! (les "..." sont inclus avec json_encode)

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2008
    Messages : 168
    Par défaut
    Effectivement j'utilise php.
    Quand j'ai fait ma recherche sur Google j'ai trouvé beaucoup de solution différente.
    L'astuce PHP fonctionne probablement aussi mais je suis satisfait que la fonction JS que tu m'as donnée, pourquoi changer ?
    Exemple (cliquer sur une des petites cartes de France) : http://www.rudyv.be/PilotePrive/Agenda.php

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. <html:link action="" > :Passer plusieurs paramètres
    Par sisiniya dans le forum Struts 1
    Réponses: 3
    Dernier message: 19/04/2011, 21h49
  2. Réponses: 2
    Dernier message: 22/10/2009, 09h22
  3. [html:link] comment passer 2 paramètres
    Par chennuo dans le forum Struts 1
    Réponses: 3
    Dernier message: 22/11/2007, 09h12
  4. Réponses: 3
    Dernier message: 11/06/2007, 12h33
  5. Formulaire HTML > passer un paramètre
    Par djbenito dans le forum IHM
    Réponses: 1
    Dernier message: 15/01/2007, 12h05

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