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 :

recuperation de parametres passés dans l'url


Sujet :

JavaScript

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 42
    Points : 46
    Points
    46
    Par défaut recuperation de parametres passés dans l'url
    Bonjours,

    J'ai un problème (certainement très simple, je suis débutant) pour récupérer les paramètres passés dans l'url.

    Ma page est appelée avec cette url:
    172.16.11.15/server-manager/cgi-bin/templateSchedule?page_stack=;page=0;.id=5a843b9eca9b5135ba26346f68c221a8&ScheduleIdentifiant=test0-schedule&ScheduleName=test-schedule&ScheduleType=backup&ScheduleLevel=full&ScheduleDate=daily&ScheduleHour=00&ScheduleMin=00&SchedulePool=D2T&wherenext=ModifySchedule

    J'appelle ma fonction par l'évènement onLoad dans la balise body:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <body onLoad="level_schedule()";>
    Dans cette fonction je voudrais récupérer les valeur de ScheduleType et de ScheduleLevel passées en paramètre dans l'url.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
        var type  = document.getElementsByName("ScheduleType")[0];
        var level = document.getElementsByName("ScheduleLevel")[0];
    or je récupère bien type.value mais pas level.value: (d'apres javascript debugger)

    Name Type Value Flag
    type.value String "backup"
    level.value String ""
    1ere question: Comment ce fait-ce ?

    Par la suite, j'ai essayé de récupérer tous les paramètres dans un tableau mais je ne sais pas comment tester les valeurs récupérées. Le test dans le code suivant est toujours négatif.
    Javascript Debugger me dit que je devrait avoir un résultat positif.
    Voici l'extrait de code:

    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
    19
    20
    21
    22
    23
     
        var nom=new Array();
        var valeur=new Array();
     
        // On enlève le ?
        param = window.location.search.slice(1,window.location.search.length);
     
        // On sépare le paramètres....
        // first[0] est de la forme param=valeur
     
       first = param.split("&");
     
       for(i=0;i<first.length;i++){
          second = first[i].split("=");
          nom[i] = second[0];
          valeur[i] = second[1];
          if (nom[i].value == "ScheduleType") {
          type.value = valeur.value;
          }
          if (nom[i].value == "ScheduleLevel") {
          level.value = valeur[i].value;
          }
       }
    et du coté du debugger:


    nom Type Value
    0 ...
    1 ...
    2 ...
    3 String "ScheduleType"
    4 String "ScheduleLevel"
    Bref, je suis un peu desespéré...

    2eme question: Quelqu'un peu m'expliquer mon erreur ?

    Eril LLUSCA.

    Fonction au complet:
    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
     
     
     
        function level_schedule()
        {
        //modify the field ScheduleLevel regarding ScheduleType
        var type  = document.getElementsByName("ScheduleType")[0];
        var level = document.getElementsByName("ScheduleLevel")[0];
        //var ident = document.getElementsByName("ScheduleIdentifiant")[0];
        //  var name = document.getElementsByName("ScheduleName")[0];
     
        var fullSelected = "false";
        var differentialSelected = "false";
     
        var nom=new Array();
        var valeur=new Array();
     
        // On enlève le ?
        param = window.location.search.slice(1,window.location.search.length);
     
        // On sépare le paramètres....
        // first[0] est de la forme param=valeur
     
       first = param.split("&");
     
       for(i=0;i<first.length;i++){
          second = first[i].split("=");
          nom[i] = second[0];
          valeur[i] = second[1];
          if (nom.value == "ScheduleType") {
          type.value = valeur.value;
          }
          if (nom[i].value == "ScheduleLevel") {
          level.value = valeur[i].value;
          }
       }
     
       switch (level.value){
         case "full":{
           fullSelected="true";
           break;
         }
         case "differential":{
           differentialSelected="true";
           break;
         }
         default:{
           break;
         }
      }
      switch (type.value){
        case "backup":
        //option selected regarding the level value
            {
              level.length=0;
              level[0] = new Option("FULL type= backup","full","",fullSelected);
              level[1] = new option("DIFFERENTIAL","differential","",differentialSelected);
           }
        break;
        case "verify":
    	{
    	level.length=0;
    	level[0] = new Option("INITCATALOG","InitCatalog");
    	level[1] = new Option("VOLUMETOCATALOG","VolumeToCatalog");
    	}
    	break;
         default:
            {
             level.length=0;
             level[0] = new Option("RIEN","rien");
    	 }
    	break;
         }
      }

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 666
    Points
    66 666
    Billets dans le blog
    1
    Par défaut
    C'est tout expliqué dans la FAQ ??

    http://javascript.developpez.com/faq...vig#RecupParam

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 42
    Points : 46
    Points
    46
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    C'est tout expliqué dans la FAQ ??

    http://javascript.developpez.com/faq...vig#RecupParam
    C'est dans la FAQ que j'ai trouvé la portion de code qui me permet de récupérer les parametres de l'uri et de les placer dans un tableau MAIS je ne sais pas comment manipuler ce tableau car les tests répondent toujours faux alors qu'il devrait être vrai pour une occurrence puisque mon url est cell-ci:
    172.16.11.15/server-manager/cgi-bin/templateSchedule?...&ScheduleType=backup&ScheduleLevel=full&...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
       for(i=0;i<first.length;i++){
          second = first[i].split("=");
          nom[i] = second[0];
          valeur[i] = second[1];
          if (nom[i].value == "ScheduleType") {
          type.value = valeur.value;
          }
          if (nom[i].value == "ScheduleLevel") {
          level.value = valeur[i].value;
          }
       }
    J'ai donc une erreur de syntaxe :je n'ai pas trouvé comment manipuler les tableaux...

    merci de votre aide.

  4. #4
    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 : 44
    Localisation : France, Val de Marne (Île de France)

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

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Points : 2 757
    Points
    2 757
    Par défaut
    salut

    d'où tu sors nom[i].value, nom[i] est une chaine donc pas de ".value". idem pour type et level

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

Discussions similaires

  1. Boulette dans code FAQ Comment récupérer les paramètres passés dans une url
    Par NoSmoking dans le forum Contributions JavaScript / AJAX
    Réponses: 5
    Dernier message: 14/11/2013, 13h17
  2. Réponses: 0
    Dernier message: 27/01/2011, 17h46
  3. passer des parametres javascript dans l'url
    Par marry dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 11/12/2009, 23h46
  4. Insertion parametre date dans une url
    Par Titoine76 dans le forum Général JavaScript
    Réponses: 16
    Dernier message: 05/03/2008, 18h01
  5. Comment recuperer un valeur envoyé dans une URL
    Par pierrot10 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 29/12/2005, 11h28

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