是否有可能强迫iOS设备在使用自定义模式作为输入类型时显示数字键盘?
我的输入模式:
<input id="price" class="numeric" pattern="\d+((\.|,)\d{1,2})?" name="price"
title="" data-mini="true" data-clear-btn="true" autocomplete="off" autofocus />我想输入一个像'14.99‘这样的货币值,然后显示一个键盘,它可以访问iOS设备上的数字
<input type='number' />
<input pattern='[0-9]*' />
<input pattern='[\d]*' />都缺少十进制符号和/或在添加小数符号时没有验证为数字。另一种方法可以是javascript函数,它在正确的位置创建十进制符号,比如按1->2->9->9,按这个顺序在keypress()上创建0.01->0.12->1.29->12.99,但这要求输入字段是type='text' ->明显的问题是,文本键盘在聚焦输入字段时显示。
我怎样才能解决这个问题?
编辑
环境:
发布于 2018-03-12 20:58:24
不能在https://stackoverflow.com/a/19998430/6437391上发表评论,所以把它作为一个单独的答案.
这是与https://stackoverflow.com/a/19998430/6437391相同的想法,但不是切换类型,而是转换模式。
当值与数值格式不匹配时,例如,如果值有分隔符( 1,234.56 ),这会导致不清除文本字段上的值的效果。
$('input[type="text"]').on('touchstart', function() {
$(this).attr('pattern', '[0-9]*');
});
$('input[type="text"]').on('focus', function() {
$(this).attr('pattern', actualpattern);
});https://stackoverflow.com/questions/19684855
复制相似问题