el-input限制输入11位数字,且展示数字位数限制,没有数字大小调整按钮

发布时间:2024年01月18日

有个需求是限制用户输入11位手机号码,且展示位数限制

发现把类型设置为type="number"后,会出现按鼠标上键数字变大的情况,而且还有一个讨厌 的数字增减图标。又在网上搜索取消这个增减图标,有人通过改样式取消,可是后面的数字限制也不见了,于是乎自己通过@input组件方法,使用正则表达式对输入的字符串进行判断,截取获得仅为数字的部分。这个判断循环可能有点耗费性能,但是,功能完美完成。唉,靠人不如靠己

<el-form-item label="客户联系方式"
                        :required=true
                        prop="customerPhone">
            <el-input v-model="addForm.customerPhone"
                      size="mini"
                      @input="limitPhoneNum"
                      show-word-limit
                      maxlength="11"
                      placeholder="请输入" />
          </el-form-item>

?

 limitPhoneNum (value) {
      let regex = new RegExp('^\\d+$');
      if (!regex.test(value)) {
        let numberLength = 0
        for (; numberLength < this.addForm.customerPhone.length; numberLength++) {
          if (!regex.test(this.addForm.customerPhone.charAt(numberLength))) {
            break
          }
        }
        this.addForm.customerPhone = this.addForm.customerPhone.slice(0, numberLength)
      }
    },

文章来源:https://blog.csdn.net/qq_51472580/article/details/135657738
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。