Tipp: Spalten mit JS addieren

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Tipp: Spalten mit JS addieren

    Hallo.

    Ich habe folgendes Formular-Konstrukt:




    Von diesen Zeilen gibt es variabel zwischen 5...300 Stück.
    Die Anzahl der Spalten ist ebenfalls variabel. (3-5)

    Gibt der Benutzer einen Wert in ein Feld ein bzw. ändert er einen Wert, muss die Summe aller Zahlen in der jew. Spalte neu berechnet werden.
    (Also jede Spalte hat seine eigene Summe.)

    Grundsätzlich gesehen ist das kein Problem, doch wie setze ich das Formular geschickt um, also bspw. die Feldnamen?

    Meine Idee wäre, der JS-Funktion den Namen der Spalte mitzugeben,

    Code:
    function summenbildung(spaltenname)
    {
    }
    die ich wiederum mit in den Feldnamen der Eingabefelder verwurstelt habe.
    Also die Spalte nennt sich bspw. "A" und die Felder dazu

    eingabeA1
    eingabeA2
    eingabeA3
    eingabeA4
    ...

    Mit

    Code:
    var werteingabe1 = document.getElementById("eingabe" + spaltenname + "1");
                   if (werteingabe1 != null)
                   {
      ...geht in die Berechnung ein...
    }
    würde ich über eine Schleife von eingabeA1...eingabeA300 auf Existenz überprüfen und entsprechend addieren.

    Allerdings ist das viel Getippe und ich find's auch nicht besonders schön.

    Gibt's noch eine andere (sauberere) Lösung?

    Danke im Voraus.

    cya

  • #2
    Pack das einfach in eine Schleife und nimm einen Zähler mit rein mit dem du dann die Elementnamen generierst.
    Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
    Schön - etwas Geschichte kann ja nicht schaden.
    Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

    Comment


    • #3
      Also doch meine unschöne Variante...

      Comment


      • #4
        Was ist daran unschön?

        HTML Code:
        for (var i = 1; i <= 300; i++) {
        var werteingabe = document.getElementById("eingabe" + spaltenname + i);
                       if (werteingabe != null)
                       {
          ...geht in die Berechnung ein...
           }
        }
        Last edited by Quetschi; 22-07-2014, 10:37.
        Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
        Schön - etwas Geschichte kann ja nicht schaden.
        Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

        Comment


        • #5
          Na ja, weil man soviel prüfen muss. Ich find's halt unschön.

          Comment


          • #6
            Naja... du kannst auch mal schauen was JS so macht, wenn du versuchst das ohne Prüfungen stur durchzuaddieren - meine JS-Kenntnisse sind da nach wie vor eher dürftig


            BTW:
            Falsches Forum.
            Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
            Schön - etwas Geschichte kann ja nicht schaden.
            Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

            Comment


            • #7
              Nee, nee. Die Prüfung ist bei dieser Variante schon notwendig.

              Ich hatte gehofft, es gäbe eine elegante Methode, bei der man eben nicht alle möglichen Felder durchtesten muss.

              Aber egal. Dann mache ich's halt so.

              Originally posted by Quetschi View Post
              Falsches Forum.
              Stimmt, sorry.

              Wenn's ein MOD sieht: Bitte verschieben. Danke.

              cya

              Comment


              • #8
                Tipp: HTML kennt „Klassen“, um Elemente als logisch zusammengehörig auszuzeichnen …
                I don't believe in rebirth. Actually, I never did in my whole lives.

                Comment

                Working...
                X