Bootstrap

el-input只能输入整数,小数、最多保留两位小数、最多输入4位小数,过滤el-input输入框中的特殊符号

只能输入框只能输入正整数,输入同时禁止了以0开始的数字输入,防止被转化为其他进制的数值。

<el-input
v-model="programForm.ladderSectionUpperBound"
@input="(v)=>(programForm.ladderSectionUpperBound=v.replace(/^(0+)|[^\d]+/g,''))"></el-input>
                  

1、只能输入纯数字

<el-input v-model="aaa" type="text" @input="(v)=>(aaa=v.replace(/[^\d]/g,''))" />

2、能输入纯数字和小数(比如:6.66)

<el-input v-model="aaa" type="text" @input="(v)=>(aaa=v.replace(/^\D*(\d*(?:\.\d{0,2})?).*$/g, '$1'))" />

3、小数最多保留两位(注意: type=“text” )

<el-form-item label="培训市场价:" prop="trainMarketPrice">
  <el-input  type="text" placeholder="请输入内容" v-model="form.trainMarketPrice" maxlength="20" onkeyup="value=value.replace(/[^\d.]/g, '')" show-word-limit>
  </el-input>
</el-form-item>

data() {

	var marketPrice = (rule, value, callback) => {
      if ((String(value).length - (String(value).indexOf(".") + 1)) > 2 && String(value).indexOf(".") >= 0) {
            callback(new Error("培训市场价限两位小数"));
      } else {
          callback();
      }
    }
    
	return {
		form: {
			trainMarketPrice: '',
		}
		rules:{
	        trainMarketPrice: [{ validator: marketPrice,  trigger: 'blur'} ], 
	 	}
	}
}

最多输入4位小数

onkeyup="this.value=this.value.match(/\d+\.?\d{0,4}/);

<el-input placeholder="请输入" onkeyup="this.value=this.value.match(/\d+\.?\d{0,4}/);" v-model="form.powerGrid" clearable></el-input>
<el-input 
 v-model="increDistriNetForm.powerCapacity"
 placeholder="请输入"
 @input="limitInput($event)"
 ></el-input>
 >
//限制只能输入4位小数
limitInput (value) {
  this.increDistriNetForm.powerCapacity = ('' + value) // 第一步:转成字符串
    .replace(/[^\d^\.]+/g, '') // 第二步:把不是数字,不是小数点的过滤掉
    .replace(/^0+(\d)/, '$1') // 第三步:第一位0开头,0后面为数字,则过滤掉,取后面的数字
    .replace(/^\./, '0.') // 第四步:如果输入的第一位为小数点,则替换成 0. 实现自动补全
    .match(/^\d*(\.?\d{0,4})/g)[0] || '' // 第五步:最终匹配得到结果 以数字开头,只有一个小数点,	而且小数点后面只能有0到2位小数
},

4、过滤el-input输入框中的特殊符号

el.value = el.value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5]/g, "");

// 注意,此时不能在v-model后添加修饰符,例如v-model.trim 就会使上面的指令失效,具体原因待研究。

5、只能输入0-9

onkeyup="value=value.replace(/^[^0-9]|[^\d]+/g,'')"

6、JS 控制不能输入特殊字符

<input onkeyup="this.value=this.value.replace(/[^u4e00-u9fa5w]/g,'')">;

7、JS 控制文本框只能输入数字

<input onkeyup="value=value.replace(/[^0-9]/g,'')" 
onpaste="value=value.replace(/[^0-9]/g,'')" 
oninput = "value=value.replace(/[^0-9]/g,'')">

8、JS 控制文本框只能输入数字、小数点

<input onkeyup="value=value.replace(/[^\0-9\.]/g,'')" 
onpaste="value=value.replace(/[^\0-9\.]/g,'')" 
oninput = "value=value.replace(/[^\0-9\.]/g,'')">

9.JS 控制文本框只能输入英文

<input onkeyup="value=value.replace(/[^\a-\z\A-\Z]/g,'')" 
onpaste="value=value.replace(/[^\a-\z\A-\Z]/g,'')" 
oninput = "value=value.replace(/[^\a-\z\A-\Z]/g,'')">

10.JS 控制文本框只能输入英文、数字

<input onkeyup="value=value.replace(/[^\a-\z\A-\Z0-9]/g,'')" 
onpaste="value=value.replace(/[^\a-\z\A-\Z0-9]/g,'')" 
oninput = "value=value.replace(/[^\a-\z\A-\Z0-9]/g,'')">

11.JS 控制文本框只能输入中文

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

12.JS 控制文本框只能输入中文、英文、数字

<input onkeyup="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5]/g,'')" 
onpaste="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5]/g,'')" 
oninput = "value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5]/g,'')">

13.JS 控制文本框只能输入中文、英文、数字、空格

<input onkeyup="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5\ ]/g,'')" 
onpaste="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5\ ]/g,'')" 
oninput = "value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5\ ]/g,'')">

14.JS 控制文本框只能输入中文、英文、数字、小数点

<input onkeyup="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5\.]/g,'')" 
onpaste="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5\.]/g,'')" 
oninput = "value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5\.]/g,'')">

;