1.只能输入数字


        <el-input
          v-model="rowForm.carriage"
          clearable
          size="small"
          style="width: 90px"
          @input="value => rowForm.carriage= Number(value.replace(/[^\d]/g,''))"
        />
  
或者公共方法
// 只能输入数字
export function setNumberValue(value) {
  if (value !== "") {
    // 保留数字部分
    value = Number(value.replace(/\D/g, ""));
    // 如果结果为零,则返回1,否则返回处理后的数字
    return value === 0 ? 1 : value;
  } else {
    // 如果值为空字符串,则返回 null
    return null;
  }
}

//使用 @input='handleInputId'
 handleInputId (value) {
            this.$set(this.form, "id", setNumberValue(value));
        },

2.输入数字小数点

 @input="rowForm.carriage= rowForm.carriage.replace(/[^\d|\.]/g, '')"

3.只能输入数字和保留2位小数

 oninput="value= value.match(/\d+(\.\d{0,2})?/) ? value.match(/\d+(\.\d{0,2})?/)[0] : ''" 

4.只能输入数字和英文

onkeyup="value=value.replace(/^[a-zA-Z0-9]+$/, '')"



// 只能输入数字和英文
export function setNumberValue2(value) {
 const regex = /^[a-zA-Z0-9]+$/;
 if (regex.test(value)) {
   return value;
 } else {
   // 输入特殊符号,返回原始值中的字母和数字部分 如输入123s@,保留123s
   return value.replace(/[^a-zA-Z0-9]/g, "");
 }
}

5.只能输入中文、数字、英文,不包含符号

<el-input oninput="value=value.replace(/[^\w\u4E00-\u9FA5]/g, '')">

6.只能输入英文,数字,不能输入中文

oninput="value=value.replace(/[^\w\.\/]/ig,'')"

7.只能输入中文,其他都不可输入

  <el-input v-model="rowForm.carriage" clearable @input="handleInput"/>
  handleInput() {
      const regex = /^[\u4e00-\u9fa5]+$/; // 中文字符的正则表达式
      if (!regex.test(this.rowForm.carriage)) {
        this.rowForm.carriage = '';
      }
    },

或者

<el-input type="text"οnkeyup="this.value=this.value.replace(/[^\u4e00\u9fa5]/g,'')"/>

8.只能英文,其他不可 

<el-input type="text" onkeyup="this.value=this.value.replace(/[^a-zA-Z]/g,'')">

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐