屏蔽输入在android手机中不起作用?
我在用电脑。它在网络浏览器和iPhone浏览器中运行良好,但在Android移动设备上不起作用 我的问题: 面具是 在输入字段中 当我输入数字时,它将是1234568555 例如: 有什么建议吗?我怎样才能解决这个问题 谢谢屏蔽输入在android手机中不起作用?,android,jquery,jquery-plugins,maskedtextbox,Android,Jquery,Jquery Plugins,Maskedtextbox,我在用电脑。它在网络浏览器和iPhone浏览器中运行良好,但在Android移动设备上不起作用 我的问题: 面具是 在输入字段中 当我输入数字时,它将是1234568555 例如: 有什么建议吗?我怎样才能解决这个问题 谢谢 Prasad。我刚刚遇到了这个问题,通过从asp文本框中删除属性type=“number”解决了这个问题。此后,即使在移动设备上,屏蔽输入也能起作用。这一问题在一段时间前已得到解决,但由于某些原因,网站上发布的发行版从未接受这些更改。如果您从原始源抓取,修复程序会起作用:我
Prasad。我刚刚遇到了这个问题,通过从asp文本框中删除属性type=“number”解决了这个问题。此后,即使在移动设备上,屏蔽输入也能起作用。这一问题在一段时间前已得到解决,但由于某些原因,网站上发布的发行版从未接受这些更改。如果您从原始源抓取,修复程序会起作用:我尝试使用Jonathan Rowny提到的原始脚本,但在S3-Chrome浏览器上仍然存在相同的问题。我认为这与输入
type=“tel”
和/或type=“number”
有关。我最后不得不使用另一个插件
jquery掩码(不要与jquery掩码输入混淆)非常相似,但语法略有不同。希望这能帮助其他人解决这个问题
jquery屏蔽输入语法:
$(“#电话”).mask(“(999)999-9999”)代码>
VS
jquery掩码语法:('#phone').mask('(000)000-0000')代码>我通过三个操作解决了这个问题,这三个操作修复了所有Android 4.0+手机的问题:
将屏蔽输入更新至至少版本1.4
将type=“tel”
添加到输入中,以触发数字键盘
删除输入的maxlength
属性,或将其设置为不干扰插入符号操作的特定值,如20
在尝试了不同的掩码库(Inputmask、ui mask、ngMask)之后,我最终使用了它,它工作得非常好,而且是轻量级的,并且有很好的文档记录,并且有angularjs、react,。。。示例。问题中使用的库不再维护。我将我的应用程序切换到,因为它工作得很好,有一个与前库非常相似的base init调用,实现了非常简单的转换,在撰写本文时,它定期在GitHub中维护
我的问题是当输入3或4位数字时,电话号码屏蔽器将光标移回第二个位置。光标在这一点之后继续表现出奇怪的行为。在使用Chrome post major版本51的android平板电脑中使用jQuery Masked Input v1.4.1(旧库)时注意到了这个问题。为了进一步增强Tony Brasunas的公认答案,请在jQuery.maskedinput.js中为第3点添加以下代码片段,以动态增加maxlength,从而不会干扰插入符号操作
删除输入的maxlength属性或将其设置为不干扰插入符号操作的特定值,如20
这可能是一个快速解决方案:
var ua = navigator.userAgent;
var isAndroid = /Android/i.test(ua);
var isChrome = /Chrome/i.test(ua);
// Fix masking on Chrome for mobile devices
if (isAndroid && isChrome) {
$('.price_input').attr('type','tel');
}
您可以共享您使用过的DOM吗?$('input[name=“user[ssn]”)。掩码(“999-99-9999”);但是所有的屏蔽都返回相同的行为。我的意思是你使用的html?Ruby on rails(html查看页面)这是在一段时间前(11个月前)修复的,但由于某种原因,网站上发布的发行版从未接受这些更改。如果你从原始源代码中获取,那么修复是有效的:Jonathan Rowny提到的原始脚本在Android 4.1+Chrome上也不适用于我。我试过上面提到的IgorEscobar脚本(jQueryMask),效果非常好!IgorEscobar的脚本在旧的Android股票浏览器上不起作用,尽管我使用了上面的.Js文件。问题仍然没有解决。我正在使用安卓果冻豆操作系统和Chtome/Firefoxbrowser@user2788596可能是因为浏览器的缓存。不管怎样,今天它可以工作了,你可以在这里看到的是1.4.1版本,在android 4.x上为我工作,在5.1.1上为我工作,在角度表单上使用输入掩码,使用角度支付。谢谢这对我有用。三星键盘有一个问题,因为预测文本,这是通过强制数字键盘解决的。我在安卓6.0.1上工作过,注意到7@Max-您是否已经有最新版本的屏蔽输入,并且是否设置了maxlength
值?
var ua = navigator.userAgent;
var isAndroid = /Android/i.test(ua);
var isChrome = /Chrome/i.test(ua);
// Fix masking on Chrome for mobile devices
if (isAndroid && isChrome) {
$('.price_input').attr('type','tel');
}