tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
2
ZUGRIFFE
915
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
DIESES THEMA IST
GESCHLOSSEN
  1. #1
    thobikid thobikid ist offline Rookie
    Registriert seit
    Jul 2003
    Beiträge
    5
    Also ich habe schon einmal ne Frage um Dropdown-Liste erstellt. Jedoch da ich jetzt diese habe, tritt das nächste Problem auf. Ich habe nun 2 Listen, bei der das so ist, dass wenn man etwas in der 1. Liste auswählt sich in der 2. Liste was ändert. (Wers net so verstanden hat, soll sich mal das Script umformen)

    Code :
    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
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <html>
    <head>
    <script language="JavaScript1.2" type="text/javascript">
    auswahl_1 = new Array
    (
    "Wähle deine Klasse",
    "DonnerKrieger",
    "Krieger",
    "Skalde",
    "Berserker",
    "Wilder",
    "Runenmeister",
    "Geisterbeschwörer",
    "Knochentänzer",
    "Schattenklinge",
    "Jäger",
    "Heiler",
    "Schamane"
    )
    auswahl_2 = new Array
    (
    "Wähle deine Klasse",
    "Fian",
    "Champion",
    "Schwertmeister",
    "Waldläufer",
    "Nachtschatten",
    "Hüter",
    "Barde",
    "Druide",
    "Eldritch",
    "Mentalist",
    "Beschwörer",
    "Schnitter",
    "Animist"
    )
    auswahl_3 = new Array
    (
    "Wähle deine Klasse",
    "Waffenmeister",
    "Söldner",
    "Paladin",
    "Arawnkrieger",
    "Kundschafter",
    "Minnesänger",
    "Infiltrator",
    "Theurg",
    "Zauberer",
    "Hexer",
    "Kabbalist",
    "Kleriker",
    "Ordensbruder",
    "Nekromant"
    )
    function tausche()
    {
    if(document.forms.eingabe.Reich.options[1].selected == true)
    {
    x = document.forms.eingabe.Klasse.length
    if(document.forms.eingabe.Klasse.length !=  0)
            { 
            var Zaehler = 0;
                while(Zaehler != x)
                {
                document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length-1] = null;
                Zaehler++;  
                }
    a = new Option(auswahl_1[0]);
    b = new Option(auswahl_1[1]);
    c = new Option(auswahl_1[2]);
    d = new Option(auswahl_1[3]);
    e = new Option(auswahl_1[4]);
    f = new Option(auswahl_1[5]);
    g = new Option(auswahl_1[6]);
    h = new Option(auswahl_1[7]);
    i = new Option(auswahl_1[8]);
    j = new Option(auswahl_1[9]);
    k = new Option(auswahl_1[10]);
    l = new Option(auswahl_1[11]);
    m = new Option(auswahl_1[12]);
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = a;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = b;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = c;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = d;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = e;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = f;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = g;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = h;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = i;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.lengh] = j;
    document.formss.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = k;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = l;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = m;
    return false;
    }
    }
    if(document.forms.eingabe.Reich.options[2].selected == true)
    {
    x = document.forms.eingabe.Klasse.length
    if(document.forms.eingabe.Klasse.length !=  0)
            { 
            var Zaehler = 0;
                while(Zaehler != x)
                {
                document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length-1] = null;
                Zaehler++;  
                }
    aa = new Option(auswahl_2[0]);
    ab = new Option(auswahl_2[1]);
    ac = new Option(auswahl_2[2]);
    ad = new Option(auswahl_2[3]);
    ae = new Option(auswahl_2[4]);
    af = new Option(auswahl_2[5]);
    ag = new Option(auswahl_2[6]);
    ah = new Option(auswahl_2[7]);
    ai = new Option(auswahl_2[8]);
    aj = new Option(auswahl_2[9]);
    ak = new Option(auswahl_2[10]);
    al = new Option(auswahl_2[11]);
    am = new Option(auswahl_2[12]);
    an = new Option(auswahl_2[13]);
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = aa;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = ab;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = ac;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = ad;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = ae;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = af;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = ag;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = ah;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = ai;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = aj;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = ak;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = al;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = am;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = an;
    return false;
    }
    }
    if(document.forms.eingabe.Reich.options[3].selected == true)
    {
    x = document.forms.eingabe.Klasse.length
    if(document.forms.eingabe.Klasse.length !=  0)
            { 
            var Zaehler = 0;
                while(Zaehler != x)
                {
                document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length-1] = null;
                Zaehler++;  
                }
    ba = new Option(auswahl_3[0]);
    bb = new Option(auswahl_3[1]);
    bc = new Option(auswahl_3[2]);
    bd = new Option(auswahl_3[3]);
    be = new Option(auswahl_3[4]);
    bf = new Option(auswahl_3[5]);
    bg = new Option(auswahl_3[6]);
    bh = new Option(auswahl_3[7]);
    bi = new Option(auswahl_3[8]);
    bj = new Option(auswahl_3[9]);
    bk = new Option(auswahl_3[10]);
    bl = new Option(auswahl_3[11]);
    bm = new Option(auswahl_3[12]);
    bn = new Option(auswahl_3[13]);
    bo = new Option(auswahl_3[14]);
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = ba;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = bb;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = bc;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = bd;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = be;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = bf;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = bg;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = bh;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = bi;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = bj;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = bk;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = bl;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = bm;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = bn;
    document.forms.eingabe.Klasse.options[document.forms.eingabe.Klasse.length] = bo;
    return false;
    }
    }
    return false
    }
     
    </script>
    </head>
    <body>
    <form name="eingabe">
    <select name="Reich" size="1" onchange="tausche()">
    <option value="Reich">Wähle dein Reich</option>
    <option value="Midgard">Midgard</option>
    <option value="Hibernia">Hibernia</option>
    <option value="Albion">Albion</option>
    </select>
     
    <select name="Klasse" size="1">
    <option selected value="Klasse">Wähle deine Klasse</option>
    </select>
     
    </form>
    </body>
    </html>

    So nun zu der Hauptfrage:
    Ich wollte nun, dass wenn man etwas in der 2. (veränderten-) Liste auswählt sich die darunterliegende Seite ändert.
    Wie kann man das machen Oder ist das nicht möglich
    Wers weiss, sollte bitte auch den Code hinschreiben, da ich noch (fast) keine Ahnung habe.
     

  2. #2
    Avatar von Sven Mintel
    Sven Mintel Sven Mintel ist offline Mitglied
    Registriert seit
    Aug 2003
    Beiträge
    18.238
    Blog-Einträge
    6
    Mmmh...ich weiss nicht so recht, was du meinst mit"darunterliegende Seite".
    Du kannst z.B. die Seite komplett gegen eine neue austauschen...
    wenn es das ist, was du meinst.... dazu musst du onchange das location-Attribut des Dokuments ändern....
    (hab den Code mal etwas verändert, ansonsten landest du bei noch mehr "Reichen" und "Klassen" schnell im MegaByte-Bereich )
    Code :
    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
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <html>
    <head>
    <script type="text/javascript">
    <!--
    auswahl=new Array();
    auswahl['Midgard'] = new Array
    (
    "DonnerKrieger",
    "Krieger",
    "Skalde"
    //usw....
    );
    auswahl['Hibernia'] = new Array
    (
    "Fian",
    "Champion",
    "Schwertmeister"
    //usw....
    );
    auswahl['Albion'] = new Array
    (
    "Waffenmeister",
    "Söldner",
    "Paladin"
    //usw....
    );
    function tausche(obj)
    {
    klassen=document.eingabe.Klasse;
    if(obj[0].value=='false'){obj[0]=null;}
    klassen.options.length=0;
    for(i=-1;i<auswahl[obj[obj.selectedIndex].value].length;++i)
        {
        if(i<0){txt='Wähle deine Klasse';}
        else{txt=auswahl[obj[obj.selectedIndex].value][i];}
        nO=new Option(txt,'',false);
        klassen[klassen.length]=nO;
        }
    }
    function newDoc()
    {
    ff=document.eingabe;
    ziel=eval(ff.Reich.selectedIndex+1)+'_'+ff.Klasse.selectedIndex+'.html';
    document.location=ziel;
    }
    //-->
    </script>
    </head>
    <body>
    <form name="eingabe">
    <select name="Reich" onchange="tausche(this.options);">
    <option value="false">Wähle dein Reich</option>
    <option value="Midgard">Midgard</option>
    <option value="Hibernia">Hibernia</option>
    <option value="Albion">Albion</option>
    </select>
    <select name="Klasse"onchange="newDoc();">
    <option value="false">------------------------------</option>
    </select>
    </form>
    </body>
    </html>
    Beim Ändern des zweiten <select>'s wird die aktuelle Seite gegen eine neue ausgetauscht.....
    Das Schema dabei ist wie folgt:
    Code :
    1
    
    [Reich]_[Klasse].html
    ....wobei für Reich und Klasse jeweils eine Ziffer steht....entsprechend der Reihenfolge in den Arrays/<selects>....
    also bspw.
    2_5.html=>Hiberna/Nachtschatten
    1_2.html=>Midgard/Krieger
    3_12.html=>Albion/Kleriker

    ....usw.
     

  3. #3
    thobikid thobikid ist offline Rookie
    Registriert seit
    Jul 2003
    Beiträge
    5
    Danke genau das hab ich gesucht.
     

Ähnliche Themen

  1. Dropdown Liste
    Von orionzrh im Forum PHP
    Antworten: 7
    Letzter Beitrag: 19.08.10, 14:36
  2. Dropdown Liste in Spring
    Von TaJa im Forum Java
    Antworten: 5
    Letzter Beitrag: 25.05.10, 18:27
  3. Dropdown-Liste erweitern
    Von marloy87 im Forum Relationale Datenbanksysteme
    Antworten: 1
    Letzter Beitrag: 23.11.04, 22:03
  4. PHP und DropDown Liste
    Von afeld im Forum PHP
    Antworten: 3
    Letzter Beitrag: 14.04.04, 09:39
  5. DropDown-Liste aktualisieren
    Von eldorim im Forum PHP
    Antworten: 2
    Letzter Beitrag: 22.02.04, 19:08