I like to have an input with maximum 3 characters. In Firefox everything works fine I can only write 3 numbers inside the input - but in safari you can write a lot of numbers inside.
You can test it in both browsers with this: http://flowplayer.org/tools/demos/validator/custom-validators.htm
For now I realized it with a validate plugin - but just for interest I like to know why isn’t this working?
EDIT:
with this it's working
<input class="required" id="field" type="text" maxlength="3" pattern="([0-9]|[0-9]|[0-9])" name="cvv"/>
You may try to user type="text" and oninput as below. This will let the numbers only.
Here is a more simple solution. For me it worked
the JS block will prevent the "."(dot) so one cant enter float. We are keeping the input type as number so it will be only number as input. If the value length is 3 then it will return false, so input length also restricted.
I've accomplished it with:
and then in JavaScript I prevented the letters:
I used something very similar to @Jules answer except his won't allow the use of keys like shift+home. Since we're validating numbers I just used isNaN in the keyup function.
With...
https://jsfiddle.net/zxqy609v/8/
Using onKeyDown length can be restricted
Happy Coding :)