位置: IT常识 - 正文

<input> 实现输入框只能输入数字(个人认为最好的)(input输入语句)

编辑:rootadmin
<input> 实现输入框只能输入数字(个人认为最好的) 需求背景:

推荐整理分享<input> 实现输入框只能输入数字(个人认为最好的)(input输入语句),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:怎么用input输入数据,input输入值,用input输入字符串,用input输入字符串,input输入语句,怎么用input输入数据,怎么用input输入数据,input输入语句,内容如对您有帮助,希望把文章链接给更多的朋友!

在项目中会遇到表单填写的时候在input中输入纯数字的情况,这个时候需要我们在输入框对用户的输入做一些限制,我在网上查了几个方案,我都尝试了一下,优缺点也标注了一下。仅供大家参考:

方案一:使用JS限制 input 输入框只能输入纯数字onkeyup = "value=value.replace(/[^\d]/g,'')"

使用 onkeyup 事件, 缺点: 在中文输入法状态下,输入汉字之后直接回车,会直接输入字母,所以:不推荐

onchange = "value=value.replace(/[^\d]/g,'')"

使用 onchange 事件, 缺点:在输入内容后,只有 input 丧失焦点时才会得到结果,并不能在输入时就做出响应

3、oninput = "value=value.replace(/[^\d]/g,'')"

使用 oninput事件,完美的解决了以上两种问题,他可以即时做出响应, 缺点:当你先输入数字,切输入法中文,开始输入,之前输入的数字会一个个的都消失,直到内容为空

4、最后,我发现了一个功能实现上最好的:同时使用onkeyup="this.value=this.value.replace(/\D/g,'')" + onafterpaste="this.value=this.value.replace(/\D/g,'')"

上面出现的3中情况均完美解决 缺点: 唯一不太行的就是 输入英文或中文是输入框都会频闪一下键盘输入的东西,但还是 可以接受的

方案二:VUE使用a-input-number组件限制 input 输入框只能输入纯数字利用a-input-number组件的controls属性api去控制不显示增减数值的按钮

缺点:当你输入中文或英文时,只有在输入框失去焦点 的时候才会去校验数字

方案三:VUE使用a-input组件利用type=number限制 input 输入框只能输入纯数字<input> 实现输入框只能输入数字(个人认为最好的)(input输入语句)

当input 使用了type='number’后,会出现这个增减数值的按钮,这里建议使用css去控制不显示:

<a-input type='number' />// css部分 需要注意浏览器兼容问题<style lang="css" scoped>input::-webkit-outer-spin-button,input::-webkit-inner-spin-button { -webkit-appearance: none; appearance: none; margin: 0;}/* 火狐 */input { -moz-appearance: textfield;}

缺点:就是你输入中文或者英文他会直接拼接一个 'e' 或 'E',所以:‘不推荐’

总结:最最最后,个人感觉使用JS的方案四比较合适

onkeyup="this.value=this.value.replace(/\D/g,'')" + onafterpaste="this.value=this.value.replace(/\D/g,'')"

<input onkeyup="this.value=this.value.replace(/\D/g,'')" onafterpaste="this.value=this.value.replace(/\D/g,'')">浅浅扩展一下:

JS判断只能是数字和小数点

文本框只能输入数字代码(小数点也不能输入)

<input onkeyup="this.value=this.value.replace(/\D/g,'')" onafterpaste="this.value=this.value.replace(/\D/g,'')">

只能输入数字,能输小数点.

<input onkeyup="if(isNaN(value))execCommand('undo')" onafterpaste="if(isNaN(value))execCommand('undo')"> <input name=txt1 onchange="if(/\D/.test(this.value)){alert('只能输入数字');this.value='';}">

数字和小数点方法二<input type="text" t_value="" o_value="" onkeypress="if(!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))this.value=this.t_value;else this.t_value=this.value;if(this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))this.o_value=this.value" onkeyup="if(!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))this.value=this.t_value;else this.t_value=this.value;if(this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))this.o_value=this.value" onblur="if(!this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?|\.\d*?)?$/))this.value=this.o_value;else{if(this.value.match(/^\.\d+$/))this.value=0+this.value;if(this.value.match(/^\.$/))this.value=0;this.o_value=this.value}"/>只能输入字母和汉字

<input onkeyup="value=value.replace(/[\d]/g,'')"onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[\d]/g,''))"maxlength=10 name="Numbers">

只能输入英文字母和数字,不能输入中文

<input onkeyup="value=value.replace(/[^\w\.\/]/ig,'')">

只能输入数字和英文

<input onKeyUp="value=value.replace(/[^\d|chun]/g,'')">

小数点后只能有最多两位(数字,中文都可输入),不能输入字母和运算符号:

<input onKeyPress="if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 || /\.\d\d$/.test(value))event.returnValue=false">

小数点后只能有最多两位(数字,字母,中文都可输入),可以输入运算符号:

<input onkeyup="this.value=this.value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3')">

只能是数字和小数点和加减乘除

onkeypress="return event.keyCode>=4&&event.keyCode<=57"

本文链接地址:https://www.jiuchutong.com/zhishi/299414.html 转载请保留说明!

上一篇:Vue学习——【第四弹】(vue系列教程)

下一篇:流程图拖拽视觉编程--概述(用流程图的形式写出视觉的形成过程)

  • 小米watchs1pro如何绑定手机(小米watchs1pro如何刷机)

    小米watchs1pro如何绑定手机(小米watchs1pro如何刷机)

  • 浏览器历史记录设置(浏览器历史记录查询)

    浏览器历史记录设置(浏览器历史记录查询)

  • 强国云盘的容量最大是多少GB(强国云盘最大储存空间)

    强国云盘的容量最大是多少GB(强国云盘最大储存空间)

  • iosnfc怎么复制门禁卡的(nfc iphone怎么复制门禁卡)

    iosnfc怎么复制门禁卡的(nfc iphone怎么复制门禁卡)

  • 华为mate30pro视频聊天怎么开美颜

    华为mate30pro视频聊天怎么开美颜

  • 健康码可以解绑家人吗(健康码可以解绑几次手机号)

    健康码可以解绑家人吗(健康码可以解绑几次手机号)

  • 微信需要实名认证的吗(微信需要实名认证才能转账吗)

    微信需要实名认证的吗(微信需要实名认证才能转账吗)

  • beatsx白灯不停闪烁

    beatsx白灯不停闪烁

  • 华为数据线5a和3a(华为数据线5A和6A)

    华为数据线5a和3a(华为数据线5A和6A)

  • cr渲染器和vray的区别(cr渲染器和vr渲染器哪个好)

    cr渲染器和vray的区别(cr渲染器和vr渲染器哪个好)

  • 快手怎么看自己的作品(快手怎么看自己给别人的评论)

    快手怎么看自己的作品(快手怎么看自己给别人的评论)

  • 手机拍照抖动怎么回事(手机拍照时抖动)

    手机拍照抖动怎么回事(手机拍照时抖动)

  • 爱奇艺小度专享会员是免费的吗(爱奇艺小度专享会员怎么登录)

    爱奇艺小度专享会员是免费的吗(爱奇艺小度专享会员怎么登录)

  • 小米note充电接口是哪种(小米note充电没反应)

    小米note充电接口是哪种(小米note充电没反应)

  • windows是一种什么系统(windows是一种什么)

    windows是一种什么系统(windows是一种什么)

  • 对方飞行模式怎么联系(对方飞行模式怎么破)

    对方飞行模式怎么联系(对方飞行模式怎么破)

  • ps怎么截取图片的一部分(ps怎么截取图片的一部分保存)

    ps怎么截取图片的一部分(ps怎么截取图片的一部分保存)

  • 哔哩哔哩怎么解绑手机号码(哔哩哔哩怎么解绑实名认证)

    哔哩哔哩怎么解绑手机号码(哔哩哔哩怎么解绑实名认证)

  • 全民k歌蓝牙耳机为什么没有耳返(全民k歌蓝牙耳机延迟)

    全民k歌蓝牙耳机为什么没有耳返(全民k歌蓝牙耳机延迟)

  • 文档中的独立一节怎么弄(word文档中的独立一节怎么设置)

    文档中的独立一节怎么弄(word文档中的独立一节怎么设置)

  • vivo和华为充电器通用吗(vivo和华为充电线)

    vivo和华为充电器通用吗(vivo和华为充电线)

  • 淘宝预售订单在哪里看(淘宝预售订单在哪里找)

    淘宝预售订单在哪里看(淘宝预售订单在哪里找)

  • 芒果tv怎么换账号登录(芒果tv怎么换账号和密码)

    芒果tv怎么换账号登录(芒果tv怎么换账号和密码)

  • 苹果传照片到安卓手机(苹果传照片到安卓手机是反的怎么办)

    苹果传照片到安卓手机(苹果传照片到安卓手机是反的怎么办)

  • 手机人物拍照角度技巧(手机照人物角度技巧集锦)

    手机人物拍照角度技巧(手机照人物角度技巧集锦)

  • 经营所得个税计算案例
  • 酒类产品的税率
  • 二手车没有发票能过户吗
  • 只有收入没有成本 企业所得税
  • 收外汇必须报关吗
  • 发票打印格式错误
  • 固定资产清理时残值怎么处理
  • 中小企业工会经费怎么算
  • 税控盘服务费减免税会计分录
  • 小规模纳税人印花税怎样计算
  • 计提残疾人保障金会计分录
  • 持有至到期投资是什么意思
  • 境外付款境内支付什么意思
  • 普通商户怎么开小票
  • 增值税起征点有啥用
  • 工资不在本公司发票报销可以吗?
  • 企业所得税国税还是地税征管
  • 增值税普票收款人
  • 发票专用章的规格大小
  • 租赁物丢失如何赔偿
  • 代开增值税发票沒有付款怎么做账?
  • 小型微利企业所得税税率2023
  • 投资股权转让需要注意什么?
  • 在王者荣耀里怎么删除好友
  • 硬盘的日常维护需要做到什么?
  • 计提税金及附加怎么算
  • linux获取网络设备的交换机网络
  • PHP:pg_escape_string()的用法_PostgreSQL函数
  • 折扣促销方式
  • 委托代销商品的科目编码
  • php获取中文字符串长度
  • 期间费用核算内容包括
  • 非上市员工持股
  • 商品流通企业的经营过程分为
  • 通往海滩的木板有什么用
  • 2手房价格
  • 前端css要掌握到什么程度
  • 个税申报结果查询
  • 原材料用于在建工程增值税如何处理
  • 出口货物退货会退税吗
  • 建筑施工企业收入怎么确认
  • 优先股股息必须支付吗
  • mysql数据库uuid
  • 发票跨月还可以作废吗
  • 电子承兑汇票支付信用查询
  • 暂时进境货物如何申报
  • 如何把有余额的账单删除
  • 行政划拨的土地有使用年限吗
  • 固定资产的类别
  • 收回客户货款会计分录怎么写
  • 收款人是否应当承担还款责任
  • 建筑业老项目和新项目如何计税
  • 小规模纳税企业在应交增值税明细科目
  • 印花税怎么进行税种认定
  • 公司变更地址后需要做哪些事情
  • centos7.6无法远程
  • mysql中key 、primary key 、unique key 与index区别
  • xp系统多了explorer进程
  • 虚拟系统win10
  • windows关机蓝屏是怎么回事
  • win7系统怎么更改默认浏览器
  • window10找不到安装的软件
  • 如何dj
  • win7系统黑屏但电脑一直在运行
  • unity4.1
  • js与css有什么区别
  • [置顶] [笔记]
  • Androidannotation使用之@Rest与服务器交互的JSON数据转换(二)
  • python 邻接表
  • animate javascript
  • php和js的区别和联系
  • pm2启动nodejs
  • 如何在Android上使用cv库
  • python全角半角
  • python的cumprod
  • 简单的智能家居
  • 定额发票网上查询
  • 企业所得税季申报表
  • 10%加计抵减政策条件
  • 逾期未申报扣几分
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设