double combo dropdown

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • double combo dropdown

    habe dieses script hier gefunden... ist ganz gut, leider scheint es nur mit 2 auswahlmöglichkeiten zu funktionieren... benötige aber selbst 4 bis 5.

    d.h. dropdown 1 wählt inhalt von dropdown 2 (siehe script)
    benötige aber noch: dropdown 2 wählt inhalt von 3, 3 von 4, 4 von 5

    würde mich über eine lösung von euch freuen...


    </script>
    </head>
    <form name="doublecombo">
    <p><select name="example" size="1" onChange="redirect(this.options.selectedIndex)">
    <option>Starke Seiten</option>
    <option>Tolle Seiten</option>
    <option>Such Seiten</option>
    </select>
    <select name="stage2" size="1">
    <option value="index.php3?opencat=Gästebuch">Gästebuch</option>
    <option value="index.php3?opencat=Impressum">Impressum</option>
    </select>
    <input type="button" name="test" value="Go!" onClick="go()"></p>
    <script>
    <!--
    var groups=document.doublecombo.example.options.length
    var group=new Array(groups)
    for (i=0; i<groups; i++)
    group[i]=new Array()

    group[0][0]=new Option("Gästebuch","index.php3?opencat=Gästebuch")
    group[0][1]=new Option("Impressum","index.php3?opencat=Impressum")
    //group[0][2]=new Option("HotBot","http://www.hotbot.com")

    group[1][0]=new Option("webAID","http://www.webaid.de")
    group[1][1]=new Option("con.firm","http://www.jswelt.de")

    group[2][0]=new Option("Hotbot","http://www.hotbot.com")
    group[2][1]=new Option("Infoseek","http://www.infoseek.com")
    group[2][2]=new Option("Excite","http://www.excite.com")
    group[2][3]=new Option("Lycos","http://www.lycos.com")

    var temp=document.doublecombo.stage2

    function redirect(x){
    for (m=temp.options.length-1;m>0;m--)
    temp.options[m]=null
    for (i=0;i<group[x].length;i++){
    temp.options[i]=new Option(group[x][i].text,group[x][i].value)
    }
    temp.options[0].selected=true
    }

    function go(){
    location=temp.options[temp.selectedIndex].value
    }

    //-->
    </script>
    </form>

  • #2
    Das sieht doch eigentlich nicht so schwer aus. Probier mal,
    Code:
    <select name="stage2" size="1" onChange="redirect(this.options.selectedIndex)">
    Und wie oben fügst du neue Comboboxes ein.

    Dann einfach noch weitere Gruppen in dem Array hinzufügen.

    Hoffe das hilft Dir.
    it's not a bug,
    it's a feature!

    Kommentar


    • #3
      hä?

      das hab ich glaub ich nicht wirklich verstanden...

      so vielleicht?

      </script>
      </head>
      <form name="doublecombo">
      <p><select name="example" size="1" onChange="redirect(this.options.selectedIndex)">
      <option>Starke Seiten</option>
      <option>Tolle Seiten</option>
      <option>Such Seiten</option>
      </select>
      <select name="stage2" size="1" onChange="redirect(this.options.selectedIndex)">
      <option value="index.php3?opencat=Gästebuch">Gästebuch</option>
      <option value="index.php3?opencat=Impressum">Impressum</option>
      </select>
      <select name="stage3" size="1" onChange="redirect(this.options.selectedIndex)">
      <option value="index.php3?opencat=Gästebuch">Gästebuch</option>
      <option value="index.php3?opencat=Impressum">Impressum</option>
      </select>
      <input type="button" name="test" value="Go!" onClick="go()"></p>
      <script>
      <!--
      var groups=document.doublecombo.example.options.length
      var group=new Array(groups)
      for (i=0; i<groups; i++)
      group[i]=new Array()

      group[0][0]=new Option("Gästebuch","index.php3?opencat=Gästebuch")
      group[0][1]=new Option("Impressum","index.php3?opencat=Impressum")
      //group[0][2]=new Option("HotBot","http://www.hotbot.com")

      group[1][0]=new Option("webAID","http://www.webaid.de")
      group[1][1]=new Option("con.firm","http://www.jswelt.de")

      group[2][0]=new Option("Hotbot","http://www.hotbot.com")
      group[2][1]=new Option("Infoseek","http://www.infoseek.com")
      group[2][2]=new Option("Excite","http://www.excite.com")
      group[2][3]=new Option("Lycos","http://www.lycos.com")

      group[3][0]=new Option("Hotbot","http://www.hotbot.com")
      group[3][1]=new Option("Infoseek","http://www.infoseek.com")
      group[3][2]=new Option("Excite","http://www.excite.com")
      group[3][3]=new Option("Lycos","http://www.lycos.com")


      var temp=document.doublecombo.stage2

      function redirect(x){
      for (m=temp.options.length-1;m>0;m--)
      temp.options[m]=null
      for (i=0;i<group[x].length;i++){
      temp.options[i]=new Option(group[x][i].text,group[x][i].value)
      }
      temp.options[0].selected=true
      }

      function go(){
      location=temp.options[temp.selectedIndex].value
      }

      //-->
      </script>
      </form>

      Kommentar


      • #4
        Ja so in der Art. Geht es denn so, wenn nicht, die Indizes beim dritten Array umdrehen.
        it's not a bug,
        it's a feature!

        Kommentar


        • #5
          nö, geht gar nicht, hab nun einige sachen probiert aber es will nicht klappen...

          damn...

          tino

          Kommentar

          Lädt...
          X