Our client wants us to display numeric keyboard for an input field so basically I created a field like:
<input type="number" name="quantity" step=".01" value="0.00" />
However, Galaxy Tablet erases "." and merges numbers before and after it, also disables "." in the keyboard.
Is there another way to solve this issue or display numeric keyboard in input field when using type="text"?
Note: I tried using pattern attribute (which works on iPhone). I tested this issue on various Android devices with Android 2.1+. I did not encounter this error on any other HTC and Samsung devices.
Yes, there is another way.
type="number"
but usetype="text"
type="tel"'
for only Android or broken. (can't use on iPhone as no period then)type="text"
and then javascript with custom behavior. See:Period always shows: http://jsbin.com/heqeduyi/1/
Period shows once 3 digits: http://jsbin.com/yinaweho/1
To have decimal point in the numeric keyboard on Android Samsung devices use this in you EditText:
I do this in C#/Xamarin and what works for me on the code side (I dynamically build up forms) is using the following:
Hope it helps someone
Did you try setting step to "any". Like:
I took out the "value" because I think you should, even if just for testing
A workaround is to use
type="tel"
instead oftype="number"
. Unfortunately on iOStype="tel"
doesn't display the,
char on the keyboard (at least I didn't find it there). You can check the user agent for iOS devices and then changetype
on"number"
.