Problem mit ÖffneFunktion

tomkn

Mitglied
Hallo.

Die Funktion soll das Objekt öffnen, welches weiter unten in einer Form gewählt wird.
Mein Funktion ganz toll solange mehrere Objekte in der Auswahlliste sind.
Wenn aber nur eines drin ist - wird das Objekt nicht geöffnet.

hier erstmal der Code:

function startDL () {
// Öffnet Liste der Dokumente zu der Gesamtanlage

var y=0;
var x=0;
while(x <= document.downl.datei.length)
{

if (document.downl.datei[x].checked == true) {

var file=document.downl.datei[x].value;
//Fenster1 = window.open("dokuliste.php?fileNr="+file, "Dokuliste", "width=320,height=420,left=100,top=200");
//Fenster1.focus();

open("./../docs_machine/"+file);
return;
}

++x;
}
}

das erste Problem ist, das "document.downl.datei.length" nichtmehr funktioniert wenn nur ein Objekt in der Liste steckt.
und das zieht natürlich folgeFehler....

wie kann ich das umgehen?

help!
 
Hi,

hoffentlich habe ich Dein Problem richtig verstanden.

Versuch mal die Liste mit Hilfe der Methode getElementsByName anzusprechen.
Code:
function startDL () {
  // Öffnet Liste der Dokumente zu der Gesamtanlage
  var y=0;

  arrCheck = document.getElementsByName('datei');
  for(x=0; x < arrCheck.length; x++){

    if (arrCheck[x].checked == true) {
      var file=arrCheck[x].value;
      Fenster1 = window.open("dokuliste.php?fileNr="+file, "Dokuliste", "width=320,height=420,left=100,top=200");
      Fenster1.focus();

      open("./../docs_machine/"+file);
      return;
     }

  }
}
Ciao
Quaese
 
Jo...die von Quase genannte Methode hilft da weiter.
Die Ursache für den Fehler: Formularelemente sind je nach Browser mit der von dir genutzen Methode nur dann als Array ansprechbar, wenn es mehr als 1 mit demselben Namen gibt.

Mit getElementsByName() gehts immer...auch, wenn nur 1 da ist.
 

Neue Beiträge

Zurück