oninput onkeyup 对于ios验证input不好的问题


一般安卓手机很少出现问题,因为安卓的oninput,onkeyup是在输入后判断的,但是有时苹果手机例如 iPhone 6splus 的输入法,oninput、 onkeyup 等是判断是否有先于赋值到输入框,导致输入的验证失败。so 可考虑oninput、onkeyup的时候,利用setTimeout异步的方法(输入后延迟判断)

function ansycInput(o){
   return setTimeout(function(){this.value=this.value.replace(/[^\d]/,"").substr(0,11)}.bind(o),0);
}

<input type='text' placeholder='请输入新的手机号码' id='newTel' oninput='ansycInput(this)'>

另外,函数提出来放到input外,能防止直接在oninput中写字符串引号容易出错的问题。

优质内容筛选与推荐>>
1、003---hibernate主要接口介绍
2、让D2006的控件面板回到D7的样式
3、node install webpack -cli webpack4.xxxx
4、Sybase日期函数
5、内置函数,闭包。装饰器初识


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号