Werte in einem Array auslassen oder überspringen?

Jutti

Grünschnabel
Hallo!
Ich erstelle zur Zeit eine Preisliste. Diese Liste wird durch ein Array mit Text gefüllt und so entsteht dann eine -Tabelle.
mein Problem: es gibt Staffelpreise. Der komplette Text der eingelesen wird hat die Variable i die dann durch die FOR-Schleife läuft.

Wie erreicht man, dass das Array diese Staffelpreise (sind 11 Stück) überspringt also einfach nicht mit in die Tabelle einliest ...

Hatte den Preisen erst eine andere Variable zugeordnet aber das wird total kompliziert

Vielen Dank schon mal!

Hier ein Auszug aus dem leider sehr großen Script :
Code:
for (var i=0; i<27; i++)
{
  ndoc.write("element " + i + " .:" + eingabe.elements[i].value + ":. <br />"); 
  if ((i%9) == 0)
  { 
//  ndoc.write(".:" + eingabe.elements[i].value + ":. "); 
    if (eingabe.elements[i].value >= 5000)
    {
    ndoc.write("</tr><tr><td>"+eingabe.elements[i].value+"</td><td align=\"left\" valign=\"top\"><input size=\"8\" id="+i+"\" value=\""+parent.frames[0].Staffelpreis[l]+"\" /></td>");

    
    } else if (eingabe.elements[i].value >= 2500) {
      ndoc.write("</tr><tr><td>"+eingabe.elements[i].value+"</td><td align=\"left\" valign=\"top\"><input size=\"8\" id="+i+"\" value=\""+parent.frames[0].Staffelpreis[m]+"\" /></td>");


    } else if (eingabe.elements[i].value >= 1000) {
      ndoc.write("</tr><tr><td>"+eingabe.elements[i].value+"</td><td align=\"left\" valign=\"top\"><input size=\"8\" id="+i+"\" value=\""+parent.frames[0].Staffelpreis[n]+"\" /></td>");


    } else if (eingabe.elements[i].value >= 500) {
    ndoc.write("</tr><tr><td>"+eingabe.elements[i].value+"</td><td align=\"left\" valign=\"top\"><input size=\"8\" id="+i+"\" value=\""+parent.frames[0].Staffelpreis[o]+"\" /></td>");


 } else if (eingabe.elements[i].value >= 250) {
    ndoc.write("</tr><tr><td>"+eingabe.elements[i].value+"</td><td align=\"left\" valign=\"top\"><input size=\"8\" id="+i+"\" value=\""+parent.frames[0].Staffelpreis[p]+"\" /></td>");
    
    
    
     } else if (eingabe.elements[i].value >= 100) {
    ndoc.write("</tr><tr><td>"+eingabe.elements[i].value+"</td><td align=\"left\" valign=\"top\"><input size=\"8\" id="+i+"\" value=\""+parent.frames[0].Staffelpreis[q]+"\" /></td>");



 } else if (eingabe.elements[i].value >= 50) {
    ndoc.write("</tr><tr><td>"+eingabe.elements[i].value+"</td><td align=\"left\" valign=\"top\"><input size=\"8\" id="+i+"\" value=\""+parent.frames[0].Staffelpreis[r]+"\" /></td>");



 } else if (eingabe.elements[i].value >= 25) {
    ndoc.write("</tr><tr><td>"+eingabe.elements[i].value+"</td><td align=\"left\" valign=\"top\"><input size=\"8\" id="+i+"\" value=\""+parent.frames[0].Staffelpreis[s]+"\" /></td>");



 } else if (eingabe.elements[i].value >= 10) {
    ndoc.write("</tr><tr><td>"+eingabe.elements[i].value+"</td><td align=\"left\" valign=\"top\"><input size=\"8\" id="+i+"\" value=\""+parent.frames[0].Staffelpreis[t]+"\" /></td>");



 } else if (eingabe.elements[i].value >= 5) {
    ndoc.write("</tr><tr><td>"+eingabe.elements[i].value+"</td><td align=\"left\" valign=\"top\"><input size=\"8\" id="+i+"\" value=\""+parent.frames[0].Staffelpreis[u]+"\" /></td>");


 } else if (eingabe.elements[i].value >= 1) {
    ndoc.write("</tr><tr><td>"+eingabe.elements[i].value+"</td><td align=\"left\" valign=\"top\"><input size=\"8\" id="+i+"\" value=\""+parent.frames[0].Staffelpreis[v]+"\" /></td>");



    
    /*("<td align=\"left\" valign=\"top\"><input size=\"8\" id="+i+"\" type=\"text\"  value=\""+ parent.frames[0].Woerter[++i] +"\"></td>")/*
    
    
    /*("<td>parent.frames[0].Staffelpreis[1]</td>")/*
    
    
    
    /*  ndoc.write("</tr><tr><td>lalla"+parent.frames[0].Staffelpreis[1]"</td>")*/
    } 
  } else {
    ndoc.write("<td>"+eingabe.elements[i].value+"</td>")
  }
}
  
ndoc.write("</tr>");


diese Schleife prüft die einzelnen Staffeln durch....


dann gibt es eine Weitere Schleife die den Text in die Tabelle zieht (die Quelle ist ein Frame der einen langen Text enthält)


for (var j=0; j<72;)
   { 
    i=j*7;
    k = j * 2;
		 document.write("<tr>");
     
	   document.write("<td align=\"left\" valign=\"top\"><input size=\"8\" id="+i+"\" type=\"text\"  value=\"\"></td>");
     
     document.write("<td align=\"left\" valign=\"top\"></td>");

     document.write("<td align=\"left\" valign=\"top\"><input size=\"10\" id="+i+"\" type=\"text\"value=\"\"></td>");

     document.write("<td align=\"left\" valign=\"top\"><input size=\"30\" id="+i+"\" type=\"text\"value=\""+ parent.frames[0].Woerter[++i] +"\"></td>");

     document.write("<td align=\"left\" valign=\"top\"><input size=\"20\" id="+i+"\" type=\"text\"value=\""+ parent.frames[0].Woerter[++i] +"\"></td>");

document.write("<td align=\"left\" valign=\"top\"><textarea id="+i+"\" cols=\"40\" rows=\"15\">"+ parent.frames[0].Woerter[++i] +"</textarea></td>");

document.write("<td align=\"left\" valign=\"top\"><textarea id="+i+"\" cols=\"25\" rows=\"15\">"+ parent.frames[0].Woerter[++i] +"</textarea></td>");

document.write("<td align=\"left\" valign=\"top\"><input size=\"8\" id="+i+"\" type=\"text\"  value=\""+ parent.frames[0].Woerter[++i] +"\"></td>"); 

document.write("<td align=\"left\" valign=\"top\"><input size=\"8\" id="+i+"\" type=\"text\" value=\""+ parent.frames[0].Woerter[++i] +"\"></td>");
 
Zuletzt bearbeitet:
Deine Fragestellung ist ziemlich ungenau, kann mir nicht wirklich viel darunter vorstellen - folglich kann ich dir auch mit keinem Code, sondern nur mit einem Algorithmus dienen:
Code:
Array durchlaufen (For-Schleife)
    Wenn Arrayelement ungleich Staffelpreis
         Text in Tabelle einlesen
    Ende-Bedingung
Ende-Schleife
Vielleicht könntest du dein Problem ja etwas genauer erklären, dann wäre es auch für uns leichter, dir zu helfen! :-)

lg D;-]c
 
Hallo!

Erstmal schon mal vielen Dank! Ich weiß das das ungenau war aber das ist auch so ein komplexes Script das ich manchmal schon selbst nich mehr so ganz durchblicke.... hab jetzt einen Großteil vom Script mal da angehangen vielleicht hilft das.... :rolleyes:
 
Woran erkennt man denn, dass es sich um einen Staffelpreis handelt?!
Handelt es sich um einen Staffelpreis, wenn der Preis mehrmals hintereinander vorkommt?! :confused:

lg D;-]c
 
Ein Staffelpreis wäre z.B.: bei 1-4 Stück kostet es 10€
und bei 5-9 Stück kostet es 7€ denk mal das iss klar...
und ich muss die ganzen Preise und den Textinhalt aus einer Excel Tabelle ziehen und speicher das dann im CSV-Format ab. Dabei wird ja alles durch ein Semikolon oder so getrennt.

jetzt hab ich in meinem Script 2 Schleifen: die erste die prüft was im Anzahl-Feld für eine Zahl eingegeben wurde (das sind die ganzen if-Schleifen) wo dann die Bedingung erfüllt ist wird dann der Preis in die Tabelle geschrieben (der entsprechende Staffelpreis).

Dann hab ich eine 2. Schleife die mir die ganzen Textstückchen aus dieser CSV-Datei zieht und die in die Tabelle einliest z.B. die Produktbeschreibung, Bestellnr. etc..... und eben auch diese staffelpreise stehen bei jedem Produkt dabei.... und die zieht er mir dann auch mit in die Tabelle rein.... und zwar irgendwohin wo eigentlich was anderes hinsoll....die Staffelpreise soll er gar nich in die Tabelle schreiben...sondern die nur dann rausziehen wenn die jeweilige Staffel ausgewählt ist.... achja sehr sehr schwer *sorry* könnte ja einen Bild von der Tabelle schicken das könnte helfen....

DANKE! für die Geduld;)
 

Neue Beiträge

Zurück