我有一个相当基本但令人沮丧的问题,基本上我一直在尝试强制输入字段表现得更像文本输入类型(它们不会更正不正确的数字条目,例如将“0..7”截断为“0” ) 并让 JS 表单验证和后端验证完成其工作。但是,虽然我想允许用户在字段中输入他们想要的任何内容(输入类型 =“文本”),但我想显示完整的数字键盘。
原来的:
<input type="number" name="test" class="answers" id="mileage" value="0.0" maxlength=5 />
尝试修复:
适用于 iPad,但不适用于 iPod,因为 iPod 显示没有小数点的紧凑型数字键盘:
<input type="text" name="test" class="answers" id="mileage" value="0.0" maxlength=5 pattern="\d*"/>
不适用于 iPod,因为它显示全文键盘,但不默认为带小数的完整键盘的“数字侧”:
<input type="text" name="test" class="answers" id="mileage" value="0.0" maxlength=5 pattern="\d+(\.\d*)?"/>
有人有想法么?防止 Mobile Safari 更正输入的数字类型(数字类型在 iPod 和 iPad 上显示正确的键盘,但在键盘隐藏时内置了对字段的更正),或者强制键盘位于完整 iPod 的数字侧键盘?
仅供参考:这听起来与我的问题非常相似,但是我可能需要不同的解决方案。听起来他们希望默认显示“完整”数字键盘,但没有 Safari 在输入其他字符时在字段中执行的数字自动格式化。