Thomas: Mit Formularfeldern rechnen

Hi!

Ich habe folgende Frage!

Ich habe ein Formular mit vier Checkboxen in zwei Reihen (zwei in der ersten Reihe und zwei in der zweiten Reihe). Wenn eine Checkbox aktiviert ist soll sie den Wert 1 annehmen.

Nun will ich folgende Rechnung durchführen und das Ergebnis in ein Textfeld schreiben:

Es soll die Summe der Werte in den einzelnen Reihen berechnet werden und diese dann miteinander multipliziert werden.

also zB
1 + 0 = 1
1 + 1 = 2
Multiplikation = 2

Danke für eure Hilfe,
MfG
Thomas

Auszug aus dem Formular:

<table width="200">
    <tr>
      <td>
        <input type="checkbox" name="A" value="1">
      </td>
      <td>
        <input type="checkbox" name="B" value="1">
      </td>
      <td>
        <input type="text" name="summe1">
      </td>
    </tr>
    <tr>
      <td>
        <input type="checkbox" name="C" value="1">
      </td>
      <td>
        <input type="checkbox" name="D" value="1">
      </td>
      <td>
        <input type="text" name="summe2">
      </td>
    </tr>
    <tr>
      <td> </td>
      <td> </td>
      <td>
        <input type="text" name="summeges">
      </td>
    </tr>
  </table>

  1. Hi,

    Wenn eine Checkbox aktiviert ist soll sie den Wert 1 annehmen.

    schade für Dich, sie nimmt nämlich nur den Wert "1" an. Zum Glück gibt es aber parseInt() und parseFloat().

    Cheatah

    1. Jep ... ich benötige auch den Wert "1". Nur wie kann ich jetzt die Summe von mehreren Checkboxen (1+1) zusammenzählen und in einem Textfeld ausgeben?

      Danke für die rasche Hilfe,

      MfG
      Thomas

      1. gruss Thomas,

        schau Dir das mal an:

        <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
        <html>

        <head>
        <title>_myCalculator.html</title>
        <script language="JavaScript" type="text/javascript">
        <!--
        function updateResults()
         {var valueA = (document.forms["calculate"].elements["A"].checked ? 1 : 0);
          var valueB = (document.forms["calculate"].elements["B"].checked ? 1 : 0);
          var valueC = (document.forms["calculate"].elements["C"].checked ? 1 : 0);
          var valueD = (document.forms["calculate"].elements["D"].checked ? 1 : 0);
          document.forms["calculate"].elements["summe1"].value = valueA+valueB;
          document.forms["calculate"].elements["summe2"].value = valueC+valueD;
          document.forms["calculate"].elements["produkt"].value = (valueA+valueB)*(valueC+valueD);
          top.focus();
         }
        //-->
        </script>
        </head>

        <body onload="updateResults();">
        <form name="calculate">
        <table width="200">
            <tr>
              <td>
                <input type="checkbox" name="A" checked onclick="updateResults();">
              </td>
              <td>
                <input type="checkbox" name="B" checked onclick="updateResults();">
              </td>
              <td>
                <input type="text" name="summe1" onfocus="updateResults();" onblur="updateResults();">
              </td>
            </tr>
            <tr>
              <td>
                <input type="checkbox" name="C" checked onclick="updateResults();">
              </td>
              <td>
                <input type="checkbox" name="D" checked onclick="updateResults();">
              </td>
              <td>
                <input type="text" name="summe2" onfocus="updateResults();" onblur="updateResults();">
              </td>
            </tr>
            <tr>
              <td> </td>
              <td> </td>
              <td>
                <input type="text" name="produkt" onfocus="updateResults();" onblur="updateResults();">
              </td>
            </tr>
          </table>
         </form>
        </body>

        </html>

        viel spass - by(t)e by(t)e - peterS. - pseliger@gmx.net

        1. Weltklasse Peter!!!

          Danke, Du bist meine Rettung!

          Genau so hab ich das gemeint.

          Thanx a lot,

          bye Thomas

          1. Das von vorhin hab ich weiter modifiziert und es klappt super! Danke! Jetzt hab ich aber noch eine Frage: ich will das ergebnis von vorher noch mit einem in einem dropdown-Ffeld zu wählenden Betrag multiplizieren.

            dropdown-Feld sieht folgendermaßen aus:

            <select name="einsatz">
                      <option value="2">2,-</option>
                      <option value="4">4,-</option>
                    </select>

            In Hoffnung auf weitere Hilfe,

            Thomas

      2. Hi,

        Jep ... ich benötige auch den Wert "1".

        nein, Du benötigst 1, nicht "1".

        Nur wie kann ich jetzt die Summe von mehreren Checkboxen (1+1) zusammenzählen und in einem Textfeld ausgeben?

        Was hat Dir an den von mir genannten Methoden mißfallen?

        Cheatah