我在我的网站上使用 jQuery 的 Masked Input 插件(版本:1.3.1)。输入掩码如下:
$('#pan').mask('9999 9999 9999 9?999 999', {placeholder:" "});
这适用于信用卡泛型,因此只能接受数字和空格。当 android 浏览器用户点击输入时,他需要将键盘切换为数字。他就是这么做的。但输入个位数后,键盘切换回“英文字母”。
我进行了调查,发现了造成这种影响的原因。这是插件中的这一行:
input.val(buffer.join(''));
该插件在每次按下按钮时完全重写输入值。
任何人都可以建议如何处理这种行为的解决方案吗?(我的意思是如何防止键盘在输入值重写时切换到默认值)
PS 并非所有手机都这样。并非所有版本的浏览器都可以。我的测试“支架”:HUAWEI P2-6011(安卓版本4.1.2)
PPS 请不要建议,因为它仅适用于数字,但我也需要空格。如果我将模式切换为 '^[0-9 ]+$' - 问题没有解决。