zoukankan      html  css  js  c++  java
  • iOS原生键盘的一些问题(?)

    项目中遇到一个问题,就是在iOS原生键盘的情况下,不管是九键还是全键盘输入框都不能输入中文,需求是只能输入大小写字母、0-9、汉字和空格

    看了一下代码,input中有这样一个正则:oninput="value=value.replace(/[^a-zA-0-9u4E00-u9FA5 ]/g,'')"

    在电脑浏览器中和安卓手机上都没有问题,那只能去苹果手机上找原因了

    在输入汉字的时候仔细观察了一下可以发现当通过拼音输入汉字时,拼音会在输入框中有一个占位,输入框就会判定此时输入的是字母而不是在拼汉字

     

    所以我就暂时换了一种方法,把正则写在watch中,当input v-model绑定的值变化时改变它

    this.searchName = newVal.replace(/[^a-zA-Z0-9u4E00-u9FA5 ]/g,"");

    然后,我试了一下,又发现了一个问题,当双击符号键(九键中的1键)的时候会删除一个字符,相当于点了一下退格,这个键的功能是连续点击的时候输入框中会交替显示,。?!这几个中的一个,

    仔细观察一下发现它的机制是删除现在显示的逗号,再显示句号,如果再立刻点一下,会删除句号,出来一个问号以此类推,所以当输入框中显示逗号时,updated被触发,程序把逗号换成空,此时原生键盘的机制又被触发,所以会删除前一个字符

    目前还没有解决这个问题,先记录一下

  • 相关阅读:
    Linux 打包文件 及 备份数据库
    YII事务
    MySQL两种存储引擎: MyISAM和InnoDB 简单总结
    mysql锁表查询和解锁操作
    Yii+MYSQL锁表防止并发情况下重复数据的方法
    B/S和C/S的区别及应用【转】
    Yii2.0的乐观锁与悲观锁
    【事务】脏读、不可重复读、幻读解释
    利用非阻塞的文件排他锁
    自定义实例化class
  • 原文地址:https://www.cnblogs.com/wuyufei/p/12717881.html
Copyright © 2011-2022 走看看