volker: Formularfeld über Button füllen

Hallo,
statt ein Formularfeld über die Tastatur zu füllen möchte ich das mittels eines "Zahlenblocks" auf dem Bildschirm erledigen. Also, der user klickt z.B. die Buttons 5 - 3 - 7 - 8 nacheinander an und die entsprechende Eingabe, 5378, erscheint so im Formularfeld. Ist das machbar?! Wenn ja, wie denn bloß?! Vielen Dank für eure Hilfe!
Volker

  1. Hi,

    statt ein Formularfeld über die Tastatur zu füllen möchte ich das
    mittels eines "Zahlenblocks" auf dem Bildschirm erledigen. Also,
    der user klickt z.B. die Buttons 5 - 3 - 7 - 8 nacheinander an
    und die entsprechende Eingabe, 5378, erscheint so im
    Formularfeld.
    Ist das machbar?!

    Klar ist das machbar ,) fast alles ist machbar *g*

    Wenn ja, wie denn bloß?!

    Also, du musst zuerstmal natuerlich die ganzen Buttons definieren.
    Ich lass das mal sein, ist mir zuviel Arbeit. Aber bei jedem Button
    musst du den Event definieren:

    onclick="mach(zahlwert);"

    Zahlwert ist beim Button "9" z. B. 9.
    Die Funktion "mach(zahl)" muss so aussehen:

    function mach(zahl)
    {
    var aktwert = document.formularname.inputname.value;
    aktwert = (aktwert * 10) + zahl;

    document.formularname.inputname.value = aktwert;
    }

    mfg
    CK1

    1. Vielen Dank CK1,
      das klappt ja ganz gut!! Jetzt erklär' mir bitte nur noch, warum der aktwert immer erst mit 10 multipliziert werden muss?!

      »»  aktwert = (aktwert * 10) + zahl;

      Wird so eine "freie Stelle" für die nächste Zahl geschafft??

      Machst du dir noch mal die Mühe?
      Danke
      Volker

      1. Hi Volker
        zu Deiner  Frage: 'Wird so eine "freie Stelle" für die nächste Zahl geschafft??'
        Das ganze ist nur einfache Schulmathematik:
        Beispiel: Wenn ich zuerst die Zahl!! 2 Eingebe, und danach die Zahl!! 5, dann muss dass Ergebnis 25 heissen und nicht etwa 7!  Wenn mit Zahlen gerechnet wird, dann wuerde bei  aktwert = aktwert + zahl; 7 rauskommen. Wenn aber der String "2" und darauffolgend der String "5" uebergeben wird, dann muss man natuerlich aktwert = aktwert + zahl; "rechnen", also den String "5" ans Ende vom String "2" anheften

        Tschau Holger

      2. Hi,

        das klappt ja ganz gut!! Jetzt erklär' mir bitte nur noch, warum
        der aktwert immer erst mit 10 multipliziert werden muss?!

        Wird so eine "freie Stelle" für die nächste Zahl geschafft??

        So, oder so aehnlich ,) rechne es doch einfach mal durch:

        Wenn man 2 eingibt, ist der aktuelle Wert des Inputs 2. Jetzt druecke
        ich danach die 4:

        aktwert = 2 -> 2 * 10 = 20; 20 + 4 = 24, also das gewuenschte
        Ergebnis ,) wenn man "nur" addieren wuerde, waere das Ergebnis
        stattdessen 6.

        mfg
        CK1