Martina: Links dynamisch (aufgrund Radio Button) änder

Hallo,

ich versuche schon länger eine Möglichkeit zu finden, wie ich aufgrund des Setzens eines Radio Buttons einen nachfolgenden Link verändern kann.

Könnt ihr mir helfen?

Danke und lg
Martina

  1. Hallo nochmals,

    wenn möglich per Javascript.

    LG Martina

    1. Hallo,

      mit createTextNode etc. sollte das kein Problem sein.

      MfG. Christoph

      --
      Wo die Sprache aufhört, fängt die Musik an...
      Selfcode:  ie:( fl:| br:^ va:| ls:/ fo:| rl:? n4:) ss:) de:] js:) ch:{ sh:) mo:) zu:)
      Go to this
  2. Hi,

    ich versuche schon länger eine Möglichkeit zu finden, wie ich aufgrund des Setzens eines Radio Buttons einen nachfolgenden Link verändern kann.

    dafür musst Du die Url per Javascript aufrufen, sofern Du nicht die Möglichkeit einer serverseitigen Weiterleitung hast. Die Nachteile kennst Du... keine Nutzbarkeit ohne js, Suchmaschienen, etc?

    Anyway, der einfachste Weg ist, dem radio ein onclick-handler zu geben, und per onclick self.location.href wie gewünscht zu verändern:
    <input onclick="self.location.href='meine_neue_url'" type="radio">

    Gruesse, Joachim

    --
    Am Ende wird alles gut.
    1. Hi,

      Nachtrag:
      falls Du bei einem existierenden Link die Url ändern möchtest gehst Du so vor:
      function toggle_link(id) {
         var mylink =  document.getElementById(id);
         mylink.href =  "meine_neue_url";
      }

      <a id="mylink" href="meine_alte_url">link</a>
      ... onclick="toggle_link('mylink')" ...

      Gruesse, Joachim

      --
      Am Ende wird alles gut.
      1. Nachtrag:
        falls Du bei einem existierenden Link die Url ändern möchtest gehst Du so vor:
        function toggle_link(id) {
           var mylink =  document.getElementById(id);
           mylink.href =  "meine_neue_url";
        }

        <a id="mylink" href="meine_alte_url">link</a>
        ... onclick="toggle_link('mylink')" ...

        Gruesse, Joachim

        Entweder deine funktion ist falsch beschriftet, und sollte heissen "unwiederbringlich umgeschriebene url", oder dein Code ist inadäquat.

        mfg Beat

        --
        Woran ich arbeite:
        X-Torah
        ><o(((°>       ><o(((°>
           <°)))o><                      ><o(((°>o
        1. Hi,

          Entweder deine funktion ist falsch beschriftet, und sollte heissen "unwiederbringlich umgeschriebene url", oder dein Code ist inadäquat.

          ja, dicherisch bin ich deutlich weniger begabt als Du, deshalb lege ich die Umtaufe der Funktion vertrauensvoll in Deine Hände. Aber denk dran: Leerzeichen sind nicht erlaubt ;-)

          Gruesse, Joachim

          --
          Am Ende wird alles gut.
      2. Hi,

        Nachtrag:
        falls Du bei einem existierenden Link die Url ändern möchtest gehst Du so vor:
        function toggle_link(id) {
           var mylink =  document.getElementById(id);
           mylink.href =  "meine_neue_url";
        }

        <a id="mylink" href="meine_alte_url">link</a>
        ... onclick="toggle_link('mylink')" ...

        Gruesse, Joachim

        Hallo Joachim,

        danke für deine Hilfe, aber der Link bleibt trotzdem auf dem alten Link stehen.

        Ich möchte dir mein Problem genauer beschreiben, irgendwie bin ich mit meinem Latein am Ende.

        Also ich habe 3 Radio Buttons und 1 bis n Links je nachdem welcher Radiobutton ausgewählt wird, müssen sich alle Links dazu ändern.

        ZB
        Radiobutton A
        Radiobutton B
        Radiobutton C

        Link 1, Link 2, ...

        LG Martina

        1. danke für deine Hilfe, aber der Link bleibt trotzdem auf dem alten Link stehen.
          Ich möchte dir mein Problem genauer beschreiben, irgendwie bin ich mit meinem Latein am Ende.

          Also ich habe 3 Radio Buttons und 1 bis n Links je nachdem welcher Radiobutton ausgewählt wird, müssen sich alle Links dazu ändern.

          ZB
          Radiobutton A
          Radiobutton B
          Radiobutton C

          Link 1, Link 2, ...

          LG Martina

          Und welche Funktion soll mit welchem/n Link/s irgendwie verbunden sein?
          beschreibe deine gewünschte Userinteraktion adäquat.

          Oder meinst du nicht "Link" sondern "Url"

          mfg Beat

          --
          Woran ich arbeite:
          X-Torah
          ><o(((°>    ><o(((°>
             <°)))o><                      ><o(((°>o
          1. danke für deine Hilfe, aber der Link bleibt trotzdem auf dem alten Link stehen.
            Ich möchte dir mein Problem genauer beschreiben, irgendwie bin ich mit meinem Latein am Ende.

            Also ich habe 3 Radio Buttons und 1 bis n Links je nachdem welcher Radiobutton ausgewählt wird, müssen sich alle Links dazu ändern.

            ZB
            Radiobutton A
            Radiobutton B
            Radiobutton C

            Link 1, Link 2, ...

            LG Martina

            Und welche Funktion soll mit welchem/n Link/s irgendwie verbunden sein?
            beschreibe deine gewünschte Userinteraktion adäquat.

            Oder meinst du nicht "Link" sondern "Url"

            mfg Beat

            Hallo Beat,

            also ich mache ein Beispiel:

            Radiobutton "Schauspieler"
            Radiobutton "Beschreibung"
            Radiobutton "Bilder"

            Link zum Film 1, Link zum Film 2, Link zum Film3

            Wenn ich zuerst Schauspieler auswähle und danach auf Film 2 möchte ich die Schauspieler des Film 2 anzeigen. Also je nachdem welche Auswahl ich bei den Radiobuttons treffe, sollen sich die URLS von dem Filmen auf die URLs der Schauspieler des jeweiligen Films ändern.

            LG Martina

            1. also ich mache ein Beispiel:

              Radiobutton "Schauspieler"
              Radiobutton "Beschreibung"
              Radiobutton "Bilder"

              Link zum Film 1, Link zum Film 2, Link zum Film3

              Wenn ich zuerst Schauspieler auswähle und danach auf Film 2 möchte ich die Schauspieler des Film 2 anzeigen. Also je nachdem welche Auswahl ich bei den Radiobuttons treffe, sollen sich die URLS von dem Filmen auf die URLs der Schauspieler des jeweiligen Films ändern.

              Jetzt hast du aber noch etwas ausgelassen:
              Wie sieht technisch eine Url bei dir aus?

              Sieht sie so aus? http://example.com/?film=1&klasse=beschreibung
              ?
              Sprich, geht es darum nur einen Teil der Url (einen Query-part ) zu ersetzen?

              Wenn das der Fall ist? (und es ist hässlich mit JS das zum machen. Ein normales Formular wäre angesagt), dann musst du eher auf jeden Link ein onclick handler setzen, dessen aufgerufene Funktion Aufgabe es sei, zu ermitteln, welche Klasse in den radio-buttons selected ist, und diese dann an den Querystring zu basteln.

              mfg Beat

              --
              Woran ich arbeite:
              X-Torah
                 <°)))o><                      ><o(((°>o
              1. also ich mache ein Beispiel:

                Radiobutton "Schauspieler"
                Radiobutton "Beschreibung"
                Radiobutton "Bilder"

                Link zum Film 1, Link zum Film 2, Link zum Film3

                Wenn ich zuerst Schauspieler auswähle und danach auf Film 2 möchte ich die Schauspieler des Film 2 anzeigen. Also je nachdem welche Auswahl ich bei den Radiobuttons treffe, sollen sich die URLS von dem Filmen auf die URLs der Schauspieler des jeweiligen Films ändern.

                Jetzt hast du aber noch etwas ausgelassen:
                Wie sieht technisch eine Url bei dir aus?

                Sieht sie so aus? http://example.com/?film=1&klasse=beschreibung
                ?
                Sprich, geht es darum nur einen Teil der Url (einen Query-part ) zu ersetzen?

                Wenn das der Fall ist? (und es ist hässlich mit JS das zum machen. Ein normales Formular wäre angesagt), dann musst du eher auf jeden Link ein onclick handler setzen, dessen aufgerufene Funktion Aufgabe es sei, zu ermitteln, welche Klasse in den radio-buttons selected ist, und diese dann an den Querystring zu basteln.

                mfg Beat

                Hallo Beat,

                Ja, ich weiß das es nicht schön ist. Aber anders geht's nicht. Wie meinst du das? Ich muss also bei jedem <a href=".." > ein onclick="ermittleURL()" dazumachen. Dazu hätte ich noch eine Frage, ich möchte ja, daß diese ermittelte Url sofort ausgeführt wird. wie geht denn das? Ich habe schon mehrere Variante probiert, aber komme auf keinen grünen zweig.

                lg martina

                1. Ja, ich weiß das es nicht schön ist. Aber anders geht's nicht.

                  Anders willst du nicht...

                  Wie meinst du das? Ich muss also bei jedem <a href=".." > ein onclick="ermittleURL()" dazumachen.

                  Das wäre jetzt derr falsche Funktionsname.
                  Die Funktion müsste lauten:

                  completeQueryStringAndDoRequest().

                  Dazu hätte ich noch eine Frage, ich möchte ja, daß diese ermittelte Url sofort ausgeführt wird. wie geht denn das? Ich habe schon mehrere Variante probiert, aber komme auf keinen grünen zweig.

                  Bitte zitiere nur, was du brauchst.

                  Was hast du bezüglich location() bisher versucht?

                  Kannst du meine Frage bezüglich der Form deiner Urls bitte noch beantworten?

                  mfg Beat

                  --
                  Woran ich arbeite:
                  X-Torah
                  ><o(((°>     ><o(((°>
                     <°)))o><                      ><o(((°>o
                  1. Ja, ich weiß das es nicht schön ist. Aber anders geht's nicht.

                    Anders willst du nicht...

                    Wollen schon, aber können nicht. Meine Seite kommt in einem "dummen" Portal zum Einsatz. Das leider nicht mehr kann.

                    Wie meinst du das? Ich muss also bei jedem <a href=".." > ein onclick="ermittleURL()" dazumachen.

                    Das wäre jetzt derr falsche Funktionsname.
                    Die Funktion müsste lauten:

                    completeQueryStringAndDoRequest().

                    das ist reine Geschmacksache. ich habe es lieber auf deutsch. :-)

                    Dazu hätte ich noch eine Frage, ich möchte ja, daß diese ermittelte Url sofort ausgeführt wird. wie geht denn das? Ich habe schon mehrere Variante probiert, aber komme auf keinen grünen zweig.

                    Bitte zitiere nur, was du brauchst.

                    Was hast du bezüglich location() bisher versucht?

                    Da das ganze auch noch in einem Frame ist, habe ich schon über parent['Body'].location.href = url, frameset.location.assign, this.href und alles was ich so im Internet darüber gefunden habe.

                    Kannst du meine Frage bezüglich der Form deiner Urls bitte noch beantworten?

                    Ich möchte immer die ganze URL austauschen.

                    mfg Beat

                    1. Kannst du meine Frage bezüglich der Form deiner Urls bitte noch beantworten?
                      Ich möchte immer die ganze URL austauschen.

                      In dem Falle brauchst du bei n Filmen bei m verschiedenen Ansichten genau n x m vorher gespeicherte Urls. x

                      Du kommunizierst extrem trollig.

                      Jetzt solltest du uns noch darüber aufklären, ob die Domain, welche das Script ausführt, die gleiche Domain ist, deren Daten verändert werden sollen.

                      Bevor du dein Vorhaben nicht klar darstellen kannst erkläre ich es für gescheitert.

                      Punkt.

                      mfg Beat

                      --
                      Woran ich arbeite:
                      X-Torah
                         <°)))o><                      ><o(((°>o
                      1. Kannst du meine Frage bezüglich der Form deiner Urls bitte noch beantworten?
                        Ich möchte immer die ganze URL austauschen.

                        In dem Falle brauchst du bei n Filmen bei m verschiedenen Ansichten genau n x m vorher gespeicherte Urls. x

                        Du kommunizierst extrem trollig.

                        Jetzt solltest du uns noch darüber aufklären, ob die Domain, welche das Script ausführt, die gleiche Domain ist, deren Daten verändert werden sollen.

                        Bevor du dein Vorhaben nicht klar darstellen kannst erkläre ich es für gescheitert.

                        Punkt.

                        mfg Beat

                        Hallo Beat,

                        danke für die Blumen. Ich habe mein Problem mittlerweile gelöst.

                        LG Martina

                      2. Hi!

                        Du kommunizierst extrem trollig.

                        Du bist mal wieder drollig

                        [*]

                        off:PP

                        [*] ein: 'SCNR' - vermeidend, um nicht als Troll erkannt zu werden.

                        --
                        "You know that place between sleep and awake, the place where you can still remember dreaming?" (Tinkerbell)
                    2. Hi!

                      Die Funktion müsste lauten:

                      completeQueryStringAndDoRequest().
                      das ist reine Geschmacksache. ich habe es lieber auf deutsch. :-)

                      Zum Thema Geschmacksache fällt mir ein: mann/frau könne es ja mal mit Französisch probieren..

                      off:PP

                      --
                      "You know that place between sleep and awake, the place where you can still remember dreaming?" (Tinkerbell)
        2. Hi

          Also ich habe 3 Radio Buttons und 1 bis n Links je nachdem welcher Radiobutton ausgewählt wird, müssen sich alle Links dazu ändern.

          Dann legst Du zu jedem radio ein array von urls an:

          var alleLinks1 = [
              "link1_url",
              "link2_url",
              "link3_url",
              "link4_url" // letzter ohne Aufzähungskomma !
          ];

          ... steckst alle zusammengehörenden Links in ein gruppierendes Parent-Element (Idealerweise eine Liste, wenns eine Linkliste ist ;-)) Diesem Element gibts Du eine ID (z.B.: myLinklist1)

          Auf Radio-Klick holst Du per js alle Links im zugehörigen Elternelement:

          var alleLinks =  document.getElementsById("myLinklist1").getElementsByTagName("a");

          ... jetzt loopst Du Durch diese Link-Collection:

          for (var i = 0; i < alleLinks.length; i++) {
              alleLinks[i].href =  alleLinks1[i];
          }

          und weist das neue href zu...

          Gruesse, Joachim

          --
          Am Ende wird alles gut.