element-ui input输入框,校验不能输入中文和特殊字符,输入中文后,英文输不进去的问题

直接贴图了:

之前的写法是:

@keyup.native="
                addForm.code = (addForm.code || '').replace(
                  /[\u4E00-\u9FA5]|[\uFE30-\uFFA0]/g,
                  ''
                )
              "

上述这种写法会引发一个偶发性问题,输入中文后,英文会输不进去,而且特殊字符校验没有生效,修改之后的写法:

@input="codeInput"

用input事件

methods里面定义:

注:校验特殊字符:[`~!@#$%^&*()_\-+=<>?:"{}|,./;'\\[\]·~!@#¥%……&*()——\-+={}|《》?:“”【】、;‘’,。、]    灰常有效哦

codeInput(val) {  
     val = val.replace(
        /[\u4E00-\u9FA5]|[`~!@#$%^&*()_\-+=<>?:"{}|,./;'\\[\]·~!@#¥%……&*()——\-+={}|《》?:“”【】、;‘’,。、]/g,
        ""
      );
      this.addForm.code = val;     //    不要忘了把校验之后的值赋值给表单这一项
    },

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值