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,'')">
相关推荐
FFF_6345602321 分钟前
简单的画板小工具,下载即用
前端·javascript·css
一朵好运莲29 分钟前
智能体使用 Chrome DevTools MCP 调试浏览器
开发语言·javascript·react.js
嘟嘟071742 分钟前
Next.js 里 SSR、CSR 和水合到底差在哪?从一段待办代码说起
前端·后端·next.js
sibylyue43 分钟前
工作流表单和流程设计前端
开发语言·javascript·开源
用户5268356779043 分钟前
Kafka 消费倾斜死锁与 Partition 掉队:我用 Rust 写了个“数据管道物理哨兵”,比 Grafana 报警快了 18 秒
javascript
南雨北斗1 小时前
回调地狱、jQuery jqXHR .then 链式、Promise + async/await写法对比
前端
liuxiaocheng1 小时前
快速上手:5 分钟跑通第一个 AI SDK 例子
前端·人工智能·后端
嘟嘟07171 小时前
ESLint 入门:从 npm run lint 到 --fix 与规则级别一次讲清
javascript·代码规范·eslint
一个游离的指针1 小时前
JS中的对象的相关概念
开发语言·javascript·原型模式
霹雳桃1 小时前
移动端 H5 折叠屏适配实战:为什么 max-width 没用,min(vw, px) 才是正解
前端·前端框架