Probleme mit Sprungmenues :-(

Status
Nicht offen für weitere Antworten.

akrite

Erfahrenes Mitglied
Moin zusammen,

ich habe folgendes Problem : ich möchte eine Art Produkt-Artikelindex mit Hilfe von Pull-Down-Menues basteln, wobei die einzelnen Anfangsbuchstaben getrennt sind (A,B,C,D,usw.) zur besseren Übersicht. Jetzt stellen sich mir drei Probleme in den Weg ,

- es funktioniert nur jeweils einmal , danach kann ich anklicken was ich will, es führt jeweils zur selben Seite

- die Menues sollen, egal wie lang der Inhalt ist, eine feste Breite haben

- wie kann ich die Einträge mit aktuellen/vorhandenen Links, in den einzelnen Pull-Downs so kennzeichnen, das man erkennt ob es sich um einen mit Link bzw. ohne Link handelt - oder muß ich DIE Einträge ohneLink jeweils auskommentieren ?

-------------Code----------------------------------------------------

<script language="javascript">
function Seite_laden ()
{
var index, inhalt;
index=window.document.Seiten.laden.selectedIndex;
inhalt=window.document.Seiten.laden.options[index].value;
parent.frames[3].location.href=inhalt;
}
</script>

</head>
<body>
<br><br>
<center>
<table width="500" border="0" cellpadding="0" cellspacing="0">
<!--DWLayoutTable-->
<tr>
<td width="10" rowspan="3" valign="top"><!--DWLayoutEmptyCell-->&nbsp;</td>
<th height="20" colspan="3" valign="top">Artikel-Index</th>
<td width="10" rowspan="3" valign="top"><!--DWLayoutEmptyCell-->&nbsp;</td>
</tr>
<tr>
<td height="60" colspan="3" valign="top"><br></td>
</tr>
<tr>
<td width="160" height="380" valign="top"><br>
<form width="160" name="Seiten">
<select name="laden" onChange="Seite_laden ()">
<option selected>---------- A ----------</option>
<option>Ablageboxen</option>
<option>Aktentaschen</option>
<option>Akku-Leuchten</option>
<option>Anrufbeantworter</option>
<option value="spitzer.html">Anspitzer</option>
</select>
</form><br>
<form width"160" name="Seiten">
<select name="laden" onChange="Seite_laden ()">
<option selected>---------- B ----------</option>
<option>Badelaken</option>
<option value="ball.html">Bälle</option>
<option>Bänder</option>
<option>Banktaschen</option>
<option value="thermo.html">Barometer</option>
</select>
</form>

---------------------Code Ende------------------------------------

Vielen Dank schon mal für die Mühe

Grüße
Andreas
 
Zu 1:
Du hast 2 Formulare mit 2 Auswahllisten, und beides hat jeweils den selben Namen....
woher soll das Skript nun wissen, welches du meinst?... Es sucht sich immer dieselbe Liste aus, egal welche du änderst.
zu 2: mit CSS
Code:
<style type="text/css">
<!--
select{width:150px;}
-->
</style>
zu 3:
indem du den "value" der ausgewählten <option> prüfst, ist der leer, gibt es keinen Link.

Lösung für 1+3:
Code:
<script type="text/javascript">
<!--
function Seite_laden (obj)
{
if(obj.options[obj.selectedIndex].value!='')
 {
 parent.frames[3].document.location=
 obj.options[obj.selectedIndex].value;
 }
}
//-->
</script>
der Aufruf jeweils mit:
Code:
onChange="Seite_laden(this);"
(die Namen von Formular und Liste spielen dabei keine Rolle, weil die entsprechende Liste der Funktion als Objekt übergeben wird)
 
...vielen , vielen Dank für die Hilfe, funktioniert gut ! Das dritte Problem scheint sich zwar nicht lösen zu lassen(mit IE und Opera probiert) aber ich bin erstmal sehr zufrieden.

Grüße
Andreas
 
Status
Nicht offen für weitere Antworten.
Zurück