Hoe kan ik alleen numerieke (0-9) in HTML inputbox met behulp van jQuery?
Ik ben een webpagina aan het maken met een tekstveld waarin ik alleen numerieke tekens wil toestaan, zoals (0,1,2,3,4,5...9) 0-9.
Hoe kan ik dit doen met behulp van jQuery?
866
3
Note: Dit is een bijgewerkt antwoord. Opmerkingen hieronder verwijzen naar een oude versie die knoeide met keycodes.
jQuery
Probeer het zelf [op JSFiddle][1].
Er is geen native jQuery implementatie hiervoor, maar je kunt de invoerwaarden van een tekst
<input>
filteren met de volgendeinputFilter
plugin (ondersteunt Copy+Paste, Drag+Drop, sneltoetsen, context menu operaties, niet-typeerbare toetsen, de caret positie, verschillende toetsenbord lay-outs, en [alle browsers sinds IE 9][2]):Je kunt nu de
inputFilter
plugin gebruiken om een invoer filter te installeren:Hier zijn nog enkele voorbeelden van invoerfilters die nuttig kunnen zijn:
Bron: http://snipt.net/GerryEng/jquery-making-textfield-only-accept-numeric-values
U kunt deze JavaScript-functie gebruiken:
En je kan het binden aan je tekstvak zoals dit:
Ik gebruik het bovenstaande in productie, en het werkt perfect, en het is cross-browser. Bovendien is het niet afhankelijk van jQuery, dus je kunt het aan je tekstvak binden met inline JavaScript: