2016-12-05 4 views
0

Wie kann ich nicht bei der Eingabe "2" wenn erste Eingabe? Ist die Verwendung von JavaScript möglich?Filter Eingabe Typ Nummer mit Javascript

Nur "2" kann beim Start nicht tippen. Irgendwelche Körperhilfe? Vielen Dank.

+0

können Sie regExp verwenden und es auf keydown Ereignis zuordnen, während für num-Taste 2 (verschiedene Tastencode hören: https://www.cambiaresearch.com/articles/15/javascript-char -codes-key-codes) –

Antwort

1

$('input').keypress(function(evt) { 
 
    if (evt.which == "2".charCodeAt(0) && $(this).val().trim() == "") { 
 
    return false; 
 
    } 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input type="number"/>

+0

Danke für die Hilfe @Amadan :) –

+0

Nun, es ist ein Overkill (und nicht wenig), um jQuery nur zu erhalten, um evet anzuhängen und Wert von Element zu erhalten. Statt '$ ('input')' 'document.querySelector' verwenden, statt' keypress' verwenden 'addEventListener ('keypress''. Anstelle von' $ (this) .val() 'benutzen' this.value' Und Sie sind gut zu gehen.Ich habe gerade Sie eine ganze Bibliothek von unnötigen (in Ihrem Fall) Code.Weiter bei jedem Aufruf von '$ (this)' Sie würden eine neue jQuery Objektinstanz erstellt haben - stattdessen Einfach nur Wert von element property. – grzesiekgs

+1

@grzesiekgs: OP angegeben [tag: jquery] in seinen Tags, antwortete ich mit jQuery.Ich nehme an, das ist nicht das einzige, was er in seinem Projekt hat, und es ist komisch, Stile zu mischen Wenn dieses Tag nicht da wäre, hätte ich mit plain JS geantwortet. – Amadan

Verwandte Themen