kolle: Parameter aus Adresszeile auslesen

Hallo,

ich versuche aktuell über die Adresszeile aus einer asp-Datei an eine HTML-Datei Parameter zu übergeben. Die Übergebene Adresse lautet z.B:
http://www.bla.de/seite.html?name1=wert1&name2=wert2

Wie kann ich denn nun diese Parameterwerte in der Aufgerufenen Datei auslesen? Ich versuchte es mit JavaScript:

neuevariable = Request.Query("wert1");
Aber ich fürchte, dass das kein JavaScript sonder eie JSP Fuktion ist. Hat vielleicht jemand einen Tipp für mich?

Vielen dank
Kolle

  1. Hallo kolle,

    neuevariable = Request.Query("wert1");

    falsch geraten, besser wäre http://de.selfhtml.org/javascript/objekte/location.htm#search.

    Gruß, Jürgen

    1. Hi Jürgen,

      vielen Dank für den Link. Damit klappt das auslesen. Wie kann ich aber die einzelnen Parameterwerte jeweils einer Variablen zuweisen? Das bekomme ich irgendwie nicht gebacken.

      Hallo kolle,

      neuevariable = Request.Query("wert1");

      falsch geraten, besser wäre http://de.selfhtml.org/javascript/objekte/location.htm#search.

      Gruß, Jürgen

      1. Hallo,

        vielen Dank für den Link. Damit klappt das auslesen. Wie kann ich aber die einzelnen Parameterwerte jeweils einer Variablen zuweisen? Das bekomme ich irgendwie nicht gebacken.

        Hier findest du was du suchst.

        Gruß aus Berlin,
        Markus

        --
        alles wird gut...
        1. vielen Dank für den Link. Damit klappt das auslesen. Wie kann ich aber die einzelnen Parameterwerte jeweils einer Variablen zuweisen? Das bekomme ich irgendwie nicht gebacken.
          Hier findest du was du suchst.

          oh, von wann ist denn der Artikel, der ist ziemlich grausam - globale Variabeln, umständlich und dazu nicht ganz korrekt.

          ich mach das so:

          (function()  
          {  
              var s = window.location.search.substring(1).split('&');  
              if(!s.length) return;  
              var c = {};  
              for(var i  = 0; i < s.length; i++)  
              {  
                  var parts = s[i].split('=');  
                  c[unescape(parts[0])] = unescape(parts[1]);  
              }  
              window.param = function(name){return name ? c[name] : c;}  
          }())
          

          über param('parameterName'); kann nun auf die Variabeln zugegriffen werden.

          Struppi.

          --
          Javascript ist toll (Perl auch!)
          1. ich mach das so:

            Und ich mach das so ;)

            Siechfred

            --
            Ich bin strenggenommen auch nur interessierter Laie. (molily)
            1. ich mach das so:

              Und ich mach das so ;)

              Wenn ich das mit: %F6%E4%FC%DF=123 (öüäß=123) als Parameter Aufrufe funktioniert es auch nicht. Ich hatte auch mit der decodeURI Methode experimentiert, aber sie arbeitet nicht korrekt. escape() funktioniert in allen Browsern und funktioniert.
              Weiß aber auch nicht mehr genau was im Detail da falsch lief.

              Struppi.

              --
              Javascript ist toll (Perl auch!)
              1. Wenn ich das mit: %F6%E4%FC%DF=123 (öüäß=123) als Parameter Aufrufe funktioniert es auch nicht.

                Danke für den Hinweis, ich habe das irgendwann vor 1 oder 2 Jahren mal gemacht und nicht weiter verfolgt. Eigentlich wollte ich nur zeigen, dass hier viele Wege zum Ziel führen können :)

                Siechfred

                --
                Ich bin strenggenommen auch nur interessierter Laie. (molily)
                1. Hi @all,

                  vielen Dank für die vielen Antworten. Ich habe den weg von Struppi gewählt. Dies kam mir am logischsten und einfachsten vor.
                  mfg
                  Kolle

                  1. Moin

                    vielen Dank für die vielen Antworten. Ich habe den weg von Struppi gewählt. Dies kam mir am logischsten und einfachsten vor.

                    Allerdings wenn in deinen Werten auch "=" vorkommt macht Struppis Funktion einen Fehler, da sie dir als Wert dann nur den Teil zwischen dem ersten und zweiten "=" ausgibt. Solltest bei dir sowas zu erwarten sein müsstest du da nachbessern.

                    Gruß
                    rfb

                    --
                    Man kann einen Menschen nichts lehren, man kann ihm nur helfen, es selbst zu entdecken.
                    (Galileo Galilei)
                    1. vielen Dank für die vielen Antworten. Ich habe den weg von Struppi gewählt. Dies kam mir am logischsten und einfachsten vor.
                      Allerdings wenn in deinen Werten auch "=" vorkommt macht Struppis Funktion einen Fehler, da sie dir als Wert dann nur den Teil zwischen dem ersten und zweiten "=" ausgibt. Solltest bei dir sowas zu erwarten sein müsstest du da nachbessern.

                      Das Gleichheitszeichen muss auch maskiert werden, da es das Trennzeichen zwischen Parametername und Wert ist. Wird vom Browser auch so gemacht

                      Struppi.

                      --
                      Javascript ist toll (Perl auch!)
                      1. Das Gleichheitszeichen muss auch maskiert werden, da es das Trennzeichen zwischen Parametername und Wert ist. Wird vom Browser auch so gemacht

                        kodiert nicht maskiert.

                        Struppi.

                        --
                        Javascript ist toll (Perl auch!)
          2. Hallo Struppi,

            ich mach das so:

            (function()

            {
            [...]
            }())

            Ok, du definierst hier also eine anonyme Funktion. Was aber bedeuten die ganzen runden Klammern?  
              
            Grüße  
            Jasmin
            
            1. ich mach das so:

              (function()

              {
              [...]
              }())

              
              > Ok, du definierst hier also eine anonyme Funktion. Was aber bedeuten die ganzen runden Klammern?  
                
              gut erkannt, die Klamnmern rufen dann die Funktion direkt auf.  
                
              Struppi.
              
              -- 
              [Javascript ist toll](http://javascript.jstruebig.de/) (Perl auch!)