只能输入50个中文。100个英文。

<el-input v-model="temp.postFailMsg" :placeholder="$t('configForm.Postfailuremessage')"  @focus="showTips($event)"  @blur="hideTips($event)"   ref="postFailMsg" @input="changeValue('postFailMsg',temp.postFailMsg,50)" />

//只能输入50个中文。100个英文。一个英文相当于0.5来算
               changeValue (ref,value,maxnum) {
                    let leng = this.validateTextLength(value);
                    // console.log(leng);
                    if (leng > maxnum) {
                      this.$refs[ref].maxLength = leng;
                      this.$message.closeAll();
                      this.$message.error(this.$t('focusTips.limitInput'))
                    }else{
                      this.$refs[ref].maxLength =100;
                     }
                  },
                  validateTextLength (value) {
                    // 中文、中文标点、全角字符按1。长度,英文、英文符号、数字按0.5长度计算
                    let cnReg = /([\u4e00-\u9fa5]|[\u3000-\u303F]|[\uFF00-\uFF60])/g
                    let mat = value.match(cnReg)
                    let length
                    if (mat) {
                      length = (mat.length + (value.length - mat.length) * 0.5)
                      return length
                    } else {
                      return value.length * 0.5
                    }
                  },

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值