当前位置: 代码迷 >> 综合 >> vux组件 x-input禁止输入特殊字符
  详细解决方案

vux组件 x-input禁止输入特殊字符

热度:28   发布时间:2024-02-27 14:53:31.0

最近在做的项目要通过一个安全测评,其中有一个安全要求是前段禁止输入特殊字符,记录一下实现的方式。

首先在main.js中天添加下面这个全局方法,来过滤特殊字符。

Vue.prototype.validForbid = function (value) {if (value) {value = value.replace(/[`~!@#$%^&*()_\-+=<>?:"{}|,./;'\\[\]·~!@#¥%……&*()——\-+={}|《》?:“”【】、;‘’,。、]/g, '').replace(/\s/g, "")}return value || ''
}

在用到输入框的地方添加on-change事件调用这个全局方法过滤:

        <x-inputtitle="会议名称"v-model="formadata.subject"text-align="right"required@on-change="$nextTick(()=>{formadata.subject = validForbid(formadata.subject)})":is-type="checkSubject":show-clear="false"placeholder="请输入会议名称"></x-input>

注意要用$nextTick(),不然不生效,试过用$set()和forceUpdate()都没有生效,具体的原因并不清楚,有大佬看到可以解释一下,感激不尽

  相关解决方案