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;     //    不要忘了把校验之后的值赋值给表单这一项
    },


版权声明:本文为m0_66899315原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。