正则表达式验证不适用于 Google Chrome Android 应用程序,但适用于 Chrome 浏览器 - PC
Posted
技术标签:
【中文标题】正则表达式验证不适用于 Google Chrome Android 应用程序,但适用于 Chrome 浏览器 - PC【英文标题】:Regx Validation won't Work in Google Chrome Android app , But Works on Chrome Browser - PC 【发布时间】:2020-04-30 03:00:41 【问题描述】:我正在使用以下正则表达式验证,以便在文本字段中仅输入 alpha(纯文本值)。 正则表达式验证在 pc 环境中工作,但通过 chrome 应用程序通过 android 设备托管和访问,验证不起作用(用户可以输入符号和数字)。感谢您的宝贵帮助。
我试过的方法
<input type="text" id="name1" placeholder="Name" class="form-control" />
$('#name1').bind('keypress', alphaOnly);
function alphaOnly(event)
var value = String.fromCharCode(event.which);
var pattern = new RegExp(/[a-zA-Z]/i);
return pattern.test(value);
【问题讨论】:
【参考方案1】:在移动设备上试试这个:
$('#name1').bind('keyup', alphaOnly);
function alphaOnly()
console.log(this.value);
this.value = this.value.replace(/[^a-z]/gi,'');
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="text" id="name1" placeholder="Name" class="form-control" />
Got idea from this answer
【讨论】:
非常感谢,它几乎可以工作,但一个小问题,输入的值在文本框中重复(例如 Jhon 输入,然后单击 '$' 结果 JhonJohn)单击符号一段时间 不,我无法重现错误,抱歉。这在我的移动 chrome 浏览器中运行良好【参考方案2】:你刚刚错过了锚点:
var pattern = /^[a-zA-Z]+$/i;
【讨论】:
谢谢 我也试过了手机??以上是关于正则表达式验证不适用于 Google Chrome Android 应用程序,但适用于 Chrome 浏览器 - PC的主要内容,如果未能解决你的问题,请参考以下文章
有效的 RegEx 不适用于 ASP.Net MVC 正则表达式属性