johanna: jquery-schleife bzw..

Hallo!

Stellt euch vor ich habe 3 spalten mit n reihen INPUT-Felder:

[SCHLEIFE $obj]
Anzahl: <INPUT TYPE="text" ID="A<?=$obj;?>">
Preis:  <INPUT TYPE="text" ID="P<?=$obj;?>">
Total:  <INPUT TYPE="text" ID="T<?=$obj;?>">
[/SCHLEIFE]

Wie erreiche ich mit den jquery-Sletoren eine "this"-schleife (...) um zu erreichen das Anzahl mal Preis = Total ergibt und das für jede Zeile auf einen schlag?
Jedes INPUT-Feld erhält noch den Zusatz CLASS="Anzahl", CLASS="Preis", CLASS="total"; So müsste der Select möglich sein und die ID via this usw.... ich weis halt nur nicht wo ich gucken soll geschweige denn wie das geht..

Danke!
Johanna

  1. Hallo Johanna,

    da gibt es mehrer Moeglichkeiten, zwei davon waeren:

    Zum einen kannst du deine ganzen Inputfelder in einen umschlieszenden DIV-Container packen. Von diesem laesst du dir dann alle Inputfelder holen. Wenn deine Struktur so statisch ist, wie du beschrieben hast, dann kannst du die Felder in jeweiligen 3er-Packs abarbeiten (notfalls fuegst du noch zusaetzlich ein Class-Attribut hinzu).

    Zum anderen kannst du mit dem Name-Attribut arbeiten. Also in dem du jedem Anzahl-, Preis- und Total-Feld einen entsprechenden Namen zuweist ( zb <input type="text" name="anzahl[]" ). Hier iterierst du dann einfach drueber und nimmst die entsprechenden Operationen vor.

    MfG
    PEter

    1. Zum anderen kannst du mit dem Name-Attribut arbeiten. Also in dem du jedem Anzahl-, Preis- und Total-Feld einen entsprechenden Namen zuweist ( zb <input type="text" name="anzahl[]" ). Hier iterierst du dann einfach drueber und nimmst die entsprechenden Operationen vor.

      Naja so hab ich das nicht gemeint, sondern eher wie ich eine Schleife aufbaue..
      Hier habe ich es doch noch selbst hin bekommen: jsbin.com/orujo

      danke trotzdem!
      Johanna

      1. Naja so hab ich das nicht gemeint, sondern eher wie ich eine Schleife aufbaue..

        Erstes input-Element einer Dreiergruppe finden, die anderen mit z.B.  add() hinzufügen und dann mit each durchackern.