hannibal: Meine Schleife geht nicht, bitte um hilfe

Beitrag lesen

Hallo Sven

for (k = 0; k < document.reservierung.kartenZahl.options.length; k++)
{

//alert(document.reservierung.kartenZahl.options[k].value);
  document.reservierung.kartenZahl.options[k] = null;

}

Es geht darum dass alle Einträge einer Auswahlliste gelöscht werden sollen. Ich setze daher alle Options auf null.

hier machst du einen grundsätzlichen Denkfehler. Du veränderst während der Laufzeit die Länge der Liste. Entfernst du das erste Element, dann rutsch das zweite an die Stelle 0. Dein k steht aber jetzt bei 1 und behandelt eben das Element, dass an zweiter Stelle steht.

Deswegen wird auch nur die Hälfte gelöscht.

warum nicht einfach die Länge der Auswahliste als Variabel vorher auslesen und sie so, absolut in die Schleife setzten?

DK = document.reservierung.kartenZahl.options.length;

for (k = 0; k < DK ; k++)

so, wenn jetzt noch ein Element fehlt oder ein Fehler kommt, dann mit

DK-1 oder DK+1 experementieren.

Das sollte eigentlich gehen.

Grüße von Hannibal