Ergebnis 1 bis 5 von 5
  1. #1
    rolanddreix ist offline Mitglied
    registriert
    02-04-2011
    Beiträge
    27

    nur Zahlen eingeben abschalten

    In einer Tabelle trage ich in der ersten Spalte Zahlen ein und in der zweiten Spalte einen Kommentar dazu. Damit in der ersten Spalte wirklich nur Zahlen eingetragen werden, blockiere ich die Eingabe der anderen Tasten mit diesem Code:

    Code:
    function pruefe_nur_zahl(){
    	$(this).keydown( function( e )
    	{
    		return !(e.altKey || e.ctrlKey || e.shiftKey)
    		&& (
    			e.keyCode >= 48 && e.keyCode <= 57 // 0 - 9
    			|| e.keyCode >= 96 && e.keyCode <= 105 // 0 - 9 NumPad
    			|| e.keyCode == 108 // , NumPad
    			|| e.keyCode == 110 // , NumPad
    			|| e.keyCode == 188 // ,
    			|| e.keyCode == 190 // .
    			|| e.keyCode == 107 // Plus NumPad
    			|| e.keyCode == 61 // Plus NumPad
    			|| e.keyCode == 109 // Minus NumPad
    			|| e.keyCode == 45 // Minus
    			|| e.keyCode == 46 // Löschen
    			|| e.keyCode == 8 // Backspace
    			|| e.keyCode == 35 // Ende
    			|| e.keyCode == 36 // Pos 1
    			|| e.keyCode == 37 // Linke Pfeil
    			|| e.keyCode == 39 // Rechte Pfeil
    		);
    	} );
    }
    Funktioniert soweit ganz gut.
    Habe ich aber in der ersten Spalte eine Zahl eingegeben, kann ich in allen Feldern nur noch Zahlen eingeben. Bedeutet: ich muss beim Verlassen eines „nur Zahlenfeldes“ dem Eventlissener sagen: jetzt bitte wieder alle Tasteneingaben akzeptieren. Und wie macht man das am dümmsten?

  2. #2
    Avatar von Dormilich
    Dormilich ist offline Kaiser
    registriert
    15-01-2010
    Beiträge
    1.280

    AW: nur Zahlen eingeben abschalten

    Zitat Zitat von rolanddreix Beitrag anzeigen
    Bedeutet: ich muss beim Verlassen eines „nur Zahlenfeldes“ dem Eventlissener sagen: jetzt bitte wieder alle Tasteneingaben akzeptieren. Und wie macht man das am dümmsten?
    Indem man die Restriktion nur auf die Input-Felder anwendet, die sie brauchen und nicht gleich auf alle.

  3. #3
    rolanddreix ist offline Mitglied
    registriert
    02-04-2011
    Beiträge
    27

    AW: nur Zahlen eingeben abschalten

    die function pruefe_nur_zahl wird nur in den nur Zahlen feldern aufgerufen.

    und this (habe ich geglaubt) bezieht sich nur auf dieses eine Feld?

  4. #4
    dertypdernixkan ist offline Tripel-As
    registriert
    31-05-2013
    Beiträge
    194

    AW: nur Zahlen eingeben abschalten

    $(this) an die ID des Feldes binden.

    Oder besser, du verwendest sowas https://developer.mozilla.org/en-US/...t/input/number, ginge auch mit

    Code:
    <input type="number" name="name" pattern="([0-9]{1,2})" min="1" max="99" step="1" maxlength="2" value="15">
    für Zahlen von 1-99, das kannst du ganz gut anpassen.

    Solange du es Serverseitig nochmal überprüfst!

  5. #5
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.612

    AW: nur Zahlen eingeben abschalten

    Wie und wo rufst du denn pruefe_nur_zahl() genau auf? Ich habe den Verdacht, dass bei dir this das window ist und nicht das input-Element.

Ähnliche Themen

  1. Zahlen in Römische Zahlen umwandeln
    Von rcon2k im Forum JavaScript
    Antworten: 22
    Letzter Beitrag: 08-02-2016, 22:04
  2. Zahlen werden nicht als Zahlen erkannt
    Von highjumper83 im Forum JavaScript
    Antworten: 5
    Letzter Beitrag: 31-08-2012, 10:33
  3. Antworten: 1
    Letzter Beitrag: 05-03-2009, 01:06
  4. Hintergrundbild abschalten
    Von wernersbacher im Forum JavaScript
    Antworten: 3
    Letzter Beitrag: 25-07-2008, 22:25
  5. Prog zum Pc abschalten
    Von Spezialist im Forum Tools und Programme
    Antworten: 3
    Letzter Beitrag: 04-12-2002, 00:49

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •