Page 1 of 1

Probleme beim Erstellen mehrerer Dropdownmenüs

Posted: Tue Dec 23, 2008 9:00 pm
by Oliver
Hallo alle zusammen,

ich möchte auf einer Seite mehrere Dropdownmenüs benutzen.
Erstelle ich eine Seite mit nur einem Menü, klappt alles wunderbar, auch mit zweien geht's noch, aber wenn ich mehr einbaue, funktioniert die Navigation nicht mehr, entweder es passiert gar nichts oder es wird auf die falsche Seite weitergeleitet.

Nun bin ich nicht gerade der Javascript-König und das was ich mir zusammen gebastelt habe, wird einige bestimmt dazu bringen, sich die Haare zu raufen.

So sieht der Code aus:

Code: Select all

<script language="JavaScript">
<!-- Verstecken für ältere Browser --
function sprung(form){
var wert=form.zielform.selectedIndex
var inhalt=form.zielform.options[wert].value;
var posanhang=inhalt.lastIndexOf("?");
var anhang=new String(inhalt.substring(posanhang+1,posanhang+2));
var ziel=inhalt.slice(0,posanhang);
if (form.zielform.options[wert].value != "0"){
if(anhang==1){location=ziel;}
if(anhang==2){window.open(ziel,"Fenster");}
if(anhang==3){parent.Framename.location.href=ziel;}
}}

function sprung(form){
var wert=form.zielform2.selectedIndex
var inhalt=form.zielform2.options[wert].value;
var posanhang=inhalt.lastIndexOf("?");
var anhang=new String(inhalt.substring(posanhang+1,posanhang+2));
var ziel=inhalt.slice(0,posanhang);
if (form.zielform2.options[wert].value != "0"){
if(anhang==1){location=ziel;}
if(anhang==2){window.open(ziel,"Fenster");}
if(anhang==3){parent.Framename.location.href=ziel;}
}}

function sprung(form){
var wert=form.zielform3.selectedIndex
var inhalt=form.zielform3.options[wert].value;
var posanhang=inhalt.lastIndexOf("?");
var anhang=new String(inhalt.substring(posanhang+1,posanhang+2));
var ziel=inhalt.slice(0,posanhang);
if (form.zielform3.options[wert].value != "0"){
if(anhang==1){location=ziel;}
if(anhang==2){window.open(ziel,"Fenster");}
if(anhang==3){parent.Framename.location.href=ziel;}
}}

function sprung(form){
var wert=form.zielform4.selectedIndex
var inhalt=form.zielform4.options[wert].value;
var posanhang=inhalt.lastIndexOf("?");
var anhang=new String(inhalt.substring(posanhang+1,posanhang+2));
var ziel=inhalt.slice(0,posanhang);
if (form.zielform4.options[wert].value != "0"){
if(anhang==1){location=ziel;}
if(anhang==2){window.open(ziel,"Fenster");}
if(anhang==3){parent.Framename.location.href=ziel;}
}}

function sprung(form){
var wert=form.zielform5.selectedIndex
var inhalt=form.zielform5.options[wert].value;
var posanhang=inhalt.lastIndexOf("?");
var anhang=new String(inhalt.substring(posanhang+1,posanhang+2));
var ziel=inhalt.slice(0,posanhang);
if (form.zielform5.options[wert].value != "0"){
if(anhang==1){location=ziel;}
if(anhang==2){window.open(ziel,"Fenster");}
if(anhang==3){parent.Framename.location.href=ziel;}
}}

function sprung(form){
var wert=form.zielform6.selectedIndex
var inhalt=form.zielform6.options[wert].value;
var posanhang=inhalt.lastIndexOf("?");
var anhang=new String(inhalt.substring(posanhang+1,posanhang+2));
var ziel=inhalt.slice(0,posanhang);
if (form.zielform6.options[wert].value != "0"){
if(anhang==1){location=ziel;}
if(anhang==2){window.open(ziel,"Fenster");}
if(anhang==3){parent.Framename.location.href=ziel;}
}}
// Ende Verstecken -->
</script>



<form NAME="formular"><p>
<select NAME="zielform" onChange="sprung(this.form)" SIZE="1">
<option SELECTED VALUE="0">Menü 1</option>
<option value="seite1.htm?1">Seite 1</option>
<option value="seite2.htm?1">Seite 2</option>
<option value="seite3.htm?1">Seite 3</option>
<option VALUE="0"> </option></select>


<select NAME="zielform2" onChange="sprung(this.form)" SIZE="1">
<option SELECTED VALUE="0">Menü 2</option>
<option value="seite4.htm?1">Seite 4</option>
<option value="seite5.htm?1">Seite 5</option>
<option value="seite6.htm?1">Seite 6</option>
<option VALUE="0"> </option></select>

<select NAME="zielform3" onChange="sprung(this.form)" SIZE="1">
<option SELECTED VALUE="0">Menü 3</option>
<option value="seite7.htm?1">Seite 7</option>
<option value="seite8.htm?1">Seite 8</option>
<option value="seite9.htm?1">Seite 9</option>
<option VALUE="0"> </option></select>

<select NAME="zielform4" onChange="sprung(this.form)" SIZE="1">
<option SELECTED VALUE="0">Menü 4</option>
<option value="seite10.htm?1">Seite 10</option>
<option value="seite11.htm?1">Seite 11</option>
<option value="seite12.htm?1">Seite 12</option>
<option VALUE="0"> </option></select>

<select NAME="zielform5" onChange="sprung(this.form)" SIZE="1">
<option SELECTED VALUE="0">Menü 5</option>
<option value="seite13.htm?1">Seite 13</option>
<option value="seite14.htm?1">Seite 14</option>
<option value="seite15.htm?1">Seite 15</option>
<option VALUE="0"> </option></select>

<select NAME="zielform6" onChange="sprung(this.form)" SIZE="1">
<option SELECTED VALUE="0">Menü 6</option>
<option value="seite16.htm?1">Seite 16</option>
<option value="seite17.htm?1">Seite 17</option>
<option value="seite18.htm?1">Seite 18</option>
<option VALUE="0"> </option></select>

</p></form>
Wer kann mir eine Möglichkeit nennen (und tut es auch :wink: ), wie ich das Menü zum Laufen bekomme?

Der Original-Quelltext, aus dem ich mir das zusammen gebaut habe, sieht so aus:

Code: Select all

<script language="JavaScript">
<!-- Verstecken für ältere Browser --
function sprung(form){
var wert=form.zielform.selectedIndex
var inhalt=form.zielform.options[wert].value;
var posanhang=inhalt.lastIndexOf("?");
var anhang=new String(inhalt.substring(posanhang+1,posanhang+2));
var ziel=inhalt.slice(0,posanhang);
if (form.zielform.options[wert].value != "0"){
if(anhang==1){location=ziel;}
if(anhang==2){window.open(ziel,"Fenster");}
if(anhang==3){parent.Framename.location.href=ziel;}
}}// Ende Verstecken -->
</script> 

<form NAME="formular"><p>
<select NAME="zielform" onChange="sprung(this.form)" SIZE="1">
<option SELECTED VALUE="0">Menü 1</option>
<option value="seite1.htm?1">Seite 1</option>
<option value="seite2.htm?1">Seite 2</option>
<option value="seite3.htm?1">Seite 3</option>
<option VALUE="0"> </option>
</select></p></form>
Ich habe den Code einfach mehrmals kopiert und bei jedem Einfügen zielform im Javascript und im HTML-Code mit einer Zahl versehen.

Vielen Dank für Eure Hilfe,

Gruß,

Lucas

Re: Probleme beim Erstellen mehrerer Dropdownmenüs

Posted: Fri Dec 26, 2008 3:01 pm
by garvinhicking
Hi!

Puh, das ist javascript-code von anno dazumal, dass das auf aktuellen browsern überhaupt noch funktioniert sollte dich freuen. ;)

Ggf. hilft dir ein SelfHTML-Forum oder so bei dem Problem besser, da es ja mit s9y nichts zu tun hat. Ich würde das von Grund auf neu und besser implementieren.

Viele Grüße,
Garvin

Posted: Sun Jan 04, 2009 12:04 am
by Oliver
Danke, ich werde mir was anderes überlegen :)