为了账号安全,请及时绑定邮箱和手机立即绑定

限制最大长度的输入

限制最大长度的输入

Smart猫小萌 2023-02-24 15:30:20
我需要一个只接受十六进制字符并需要提供最大长度的输入框。我只能处理接受十六进制,但我遇到问题的地方是粘贴字符串时 - 无效字符也被计算在最大长度中。这是我目前拥有的:<q-input outlined v-model="text" label="Outlined" @input="acceptHexOnly" maxlength="6"></q-input>和:acceptHexOnly () {  console.log(this.text)  this.$nextTick(() => {    this.text = this.text.replace(/[^a-fA-F0-9\n\r]+/g, '').toUpperCase()  })}所以在粘贴字符串时:xabx12xcdxef预期的:AB12CD实际的:AB12帮助!小提琴: https: //codepen.io/keechan/pen/qBZoXPj
查看完整描述

1 回答

?
汪汪一只猫

TA贡献1898条经验 获得超8个赞

从输入字段中删除 maxlength 属性并添加 .slice(0, 6) 如下


acceptHexOnly () {

  console.log(this.text)

  this.$nextTick(() => {

    this.text = this.text.replace(/[^a-fA-F0-9\n\r]+/g, '').toUpperCase().slice(0, 6)

  })

}


查看完整回答
反对 回复 2023-02-24
  • 1 回答
  • 0 关注
  • 98 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号