目的:使用 number 表单,让其只可输入数字。
问题:ios 可正常限制,Android 仍可输入 [ e | . | - | + ] 这4个字符。猜测这4个字符在数值中为科学记数、小数点、负号、正号。
代码:
<input type="number" maxlength="255" min="0" placeholder="请输入" onKeypress="return (/[\d]/.test(String.fromCharCode(event.keyCode)))" pattern="[0-9]*" value="" />
代码解析:
1、onKeypress="return (/[\d]/.test(String.fromCharCode(event.keyCode)))" :ios 下可限制输入数字,但 android 仍可输入 [ e | . | - | + ] 这4个字符 ;
2、pattern="[0-9]*" :可调出纯数字键盘(仅 ios );