小程序
小游戏
企业微信
微信支付
扫描小程序码分享
从IOS通讯录中复制电话号码粘贴到input中,前后带有隐藏特殊符号,导致电话号码验证错误。有遇到过的同学吗?有解决办法吗?
还原测试方法
< input name = 'PhoneNumber' type = 'number' placeholder = "请输入手机号" / >
从IOS通讯录中复制电话号码后,一位位的删除内容,删除到第一位的时候, placeholder 内容不会显示出来,再删除一位, placeholder 显示出来。
3 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
做个正则过滤不就好了?
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
是的,但是在知道引发问题的原因前,不知道踩的是什么坑。你这不是事后诸葛亮吗?
本来你就需要考虑到校验,你不做校验,用户输个a可以不
type="number" 用户能粘贴非数字字符进去?
这个type类型是调用起键盘显示文本或数字的来进行输入的,用户直接粘贴不一定会弹出键盘,建议做个失去焦点的事件 直接reg
牛逼的问题就是,用户粘贴进去后,特殊符号是不可见不占位的。IOS11的坑,可以详细了解这里:https://github.com/zwwill/blog/issues/12
最后用
replace(/[^\d]/g,'')
过滤了非法字符,然后再进行正则校验,可以了。
你好暂无复现你的问题,请提供一下出现问题的机型和微信版本,以及能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。
抱歉,问题很简单但是不好提供代码片段,只能提供问题重现流程了。
1、小程序页面组件
2、苹果6手机,通讯录复制手机号码方式(重点就是这个复制方式)。
3、粘贴到input后,可以判断长度检查发现问题,或者一位一位的删除查看placeholder 状态。
按照你的提供的代码以及测试方法,没有复现问题,你所说的长度有问题指的的是长度为13吗?
粘贴手机号码长度应该是11,你测试出长度为13了?那就是前后有特殊符号占位了嘛。
不是的,是因为苹果的手机号格式为3-4-4之间有的-这符号所导致的,暂时没发现你的所说的占位符的问题
尴尬了,不是这个-的问题,你那边有测试placeholder状态吗?回头我试试录一个gif重现问题吧。
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
做个正则过滤不就好了?
是的,但是在知道引发问题的原因前,不知道踩的是什么坑。你这不是事后诸葛亮吗?
本来你就需要考虑到校验,你不做校验,用户输个a可以不
type="number" 用户能粘贴非数字字符进去?
这个type类型是调用起键盘显示文本或数字的来进行输入的,用户直接粘贴不一定会弹出键盘,建议做个失去焦点的事件 直接reg
牛逼的问题就是,用户粘贴进去后,特殊符号是不可见不占位的。IOS11的坑,可以详细了解这里:https://github.com/zwwill/blog/issues/12
最后用
replace(/[^\d]/g,'')
过滤了非法字符,然后再进行正则校验,可以了。
你好暂无复现你的问题,请提供一下出现问题的机型和微信版本,以及能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。
抱歉,问题很简单但是不好提供代码片段,只能提供问题重现流程了。
1、小程序页面组件
< input name = 'PhoneNumber' type = 'number' placeholder = "请输入手机号" / >
2、苹果6手机,通讯录复制手机号码方式(重点就是这个复制方式)。
3、粘贴到input后,可以判断长度检查发现问题,或者一位一位的删除查看placeholder 状态。
按照你的提供的代码以及测试方法,没有复现问题,你所说的长度有问题指的的是长度为13吗?
粘贴手机号码长度应该是11,你测试出长度为13了?那就是前后有特殊符号占位了嘛。
不是的,是因为苹果的手机号格式为3-4-4之间有的-这符号所导致的,暂时没发现你的所说的占位符的问题
尴尬了,不是这个-的问题,你那边有测试placeholder状态吗?回头我试试录一个gif重现问题吧。