input使用正则限制只输入英文和汉字 先输入英文 在输入数字 英文会复制

 先输入英文  在输入数字  英文会复制
 先输入英文  在输入数字  英文会复制

<input type="text" placeholder="姓名" oninput="value=value.replace(/[^\a-zA-Z\u4E00-\u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\a-zA-Z\u4E00-\u9FA5]/g,''))">
//这样写 电脑上没问题 有些手机会出现这种问题  跟输入法有关 这时候我们就要换一种思路

思路二:

//给input绑定事件 通过事件监听对输入内容进行处理
 <input type="text" placeholder="姓名" v-model="form.name"  @input="inputName">
 export default {
  data () {
            return {
                form: {
                    name : '',
                    }
            }
        },
  methods: {
    inputName () {
   //使用replace() 方法 (在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串)
                let reg = /[\0-9\`~!@#$^&*()=|{}':;',\\\[\]\.<>\/?~!@#¥……&*()——|{}【】';:""'。,、?\s]+/g
                this.form.name = this.form.name.replace(reg,'')
            },
   }
 }
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值