for loop a[0] enthält einen wert dann wieder doch nicht ?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • for loop a[0] enthält einen wert dann wieder doch nicht ?

    hallo,

    kleines problem bei folgendem

    Code:
    <script language = "JavaScript">
    <!--
    function create(_f) {
      storywin = window.open();
      with (storywin.document)
      {
            var a = _f.pic.value;
            var a = a.split(",");
            
            
           for (var i = 0; i < a.length-1; ++i)
    {
      writeln(a[i]);        // a[0] enthält ../archive/1/1/1/pic/1.jpg
      writeln("<img src=pic_small.php?file="+a[i]+">");        // a[0] ist leer
    
    
    }
    	}
    
    
    }
    // -->
    </script>
    die variable pic wird von einem formular übergeben
    eine testausgabe sieht folgendermaßen aus

    ../archive/1/1/1/pic/1.jpg,../archive/1/1/1/pic/2.jpg,../archive/1/1/1/pic/3.jpg,

    die ausgabe von writeln(a[i]) funktioniert, d.h. a[0] enthält den gewünschten wert
    bei writeln("<img src=pic_small.php?file="+a[i]+">"); wird mir beim ersten durchlauf (i = 0) dieser wert aber nicht ausgegeben, a[1] a[2] ... funktionieren

    hat jemand dafür eine erklärung ...

    wozu soll das gut sein:
    im popup fenster werden thumbnails von bildern angezeigt, durch anklicken soll dann ein bbcode [img ]BILDNAME[ /img] in einem textfeld an der aktuellen cursorposition eingefügt werden ... bis dorthin ist es aber noch ein langer js-steiniger weg


    sorry aber noch komplizierter konnte ich mich nicht ausdrücken

    mfg

  • #2
    Re: for loop a[0] enthält einen wert dann wieder doch nicht ?

    Original geschrieben von hi0b
    bei writeln("<img src=pic_small.php?file="+a[i]+">"); wird mir beim ersten durchlauf (i = 0) dieser wert aber nicht ausgegeben, a[1] a[2] ... funktionieren
    komisch, wenn ich das teste, ist's andersherum - a[0] und a[1] werden ausgegeben, a[2] aber nicht mehr.

    und warum? na weil die bedigung der for-schleife um eins zu früh abbricht.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Re: for loop a[0] enthält einen wert dann wieder doch nicht ?

      thx für deine antwort,
      aber
      nö das kann nicht sein

      Original geschrieben von hi0b

      ../archive/1/1/1/pic/1.jpg,../archive/1/1/1/pic/2.jpg,../archive/1/1/1/pic/3.jpg[COLOR=red],[/COLOR]

      for (var i = 0; i < a.length[COLOR=red]-1[/COLOR] ; ++i)

      -1 steht wegen des letzten kommas im übergebenen string, eine testausgabe write(a.length) ergibt 4
      ich habe im php teil keine überprüfung ob das letzte bild erreicht ist eingebaut, darum wird nach jedem eintrag ein komma als trennzeichen gesetzt
      Zuletzt geändert von hi0b; 08.04.2005, 12:13.

      Kommentar


      • #4
        Re: Re: for loop a[0] enthält einen wert dann wieder doch nicht ?

        Original geschrieben von hi0b
        -1 steht wegen des letzten kommas im übergebenen string
        OK, ich hatte nicht angenommen, dass das komma noch dazugehört.

        aber auch, wenn ich es damit probiere (und dann die -1 wieder in die bedingung aufnehme), kann ich dein problem nicht nachvollziehen:
        es werden die texte "../archive/1/1/1/pic/1.jpg" bis "...3.jpg" ausgegeben, jeweils gefolgt von den <img>-tags mit gleichlautendem src-attribut.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar

        Lädt...
        X