jQuery控制input只能输入数字和两位小数的方法


Posted in jQuery onMay 16, 2019

前言

做为一个PHPER,难免会遇到那种表单中jQuery限制输入的问题,比如,限制空格的输入,只允许输入数字,以及小数点的控制等等,这里,我们就说一下数字的限制。

jquery代码

话不多说,直接先上jQuery函数,具体的可以看注释说明,在使用这个之前,请务必保证已经提前引入了jQuery库,大家可以自己下载一个jQuery文件,然后引入,也可以查找CDN地址引入,比如在 https://www.bootcdn.cn/jquery/ 可以查找到很多版本的引入地址,直接找到你想要的引入就行。

<script>
  // 格式化限制数字文本框输入,只能数字或者两位小数
  function format_input_num(obj){
    // 清除"数字"和"."以外的字符
    obj.value = obj.value.replace(/[^\d.]/g,"");
    // 验证第一个字符是数字
    obj.value = obj.value.replace(/^\./g,"");
    // 只保留第一个, 清除多余的
    obj.value = obj.value.replace(/\.{2,}/g,".");
    obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");
    // 只能输入两个小数
    obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3');
  }
</script>

函数的直接用法之onkeyup

在input表单输入中,限制最多只能保留两位小数点,其他自动抹掉;这里会用到onkeyup事件,也就是onkeyup事件会在键盘按键被松开时发生,也就是,这个时候调用我们的函数,来处理已输入的内容。

<input type="text" onkeyup="format_input_num(this)" value="" size="10" />元

函数的直接用法之blur

除了上面的监控键盘事件外,还可以通过监控表单的焦点事件来实现,也就是,表单都有获得焦点事件focus和失去焦点事件blur,我们只需要在失去焦点的时候,调用我们的format_input_num函数就可以了,具体如下:

<input type="text" onblur="format_input_num(this)" value="" size="10" />元

或者不在表单中直接绑定方法,而是去jQuery中通过查找元素节点,然后单独绑定相应的事件,并执行相关函数

<input type="text" value="" size="10" id="money" />元
<script>
  $("#money").off('blur').on('blur', function(){
    format_input_num(this);
  });
</script>

其他输入限制

限制只能输入数字的写法,也就是,只能输入0-9的数字

<input type="text" onkeyup='this.value=this.value.replace(/\D/gi,"")' />

限制只能输入数字、字母和横线"-",其中字母包括大小写

<input type="text" onkeyup='value=value.replace(/[^A-Za-z0-9\-]+/g,"")' />

当然了,还有其他很多校验规则,可以自己根据实际需求进
行修改和尝试一下

最后

以上所述是小编给大家介绍的jQuery控制input只能输入数字和两位小数的方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

jQuery 相关文章推荐
jquery插件canvaspercent.js实现百分比圆饼效果
Jul 18 jQuery
jQuery选取所有复选框被选中的值并用Ajax异步提交数据的实例
Aug 04 jQuery
jQuery实现腾讯信用界面(自制刻度尺)样式
Aug 15 jQuery
JS+jQuery实现注册信息的验证功能
Sep 26 jQuery
jQuery实现的事件绑定功能基本示例
Oct 11 jQuery
jquery动态添加以及遍历option并获取特定样式名称的option方法
Jan 29 jQuery
jQuery实现模糊查询的方法分析
May 10 jQuery
解决jquery的ajax调取后端数据成功却渲染失败的问题
Aug 08 jQuery
jQuery利用FormData上传文件实现批量上传
Dec 04 jQuery
jQuery实现动态添加和删除input框代码实例
Mar 29 jQuery
jQuery Ajax async=&gt;false异步改为同步时,解决导致浏览器假死的问题
Jul 22 jQuery
jQuery实现增删改查
Dec 22 jQuery
Vue项目中使用jquery的简单方法
May 16 #jQuery
JQuery常见节点操作实例分析
May 15 #jQuery
JQuery属性操作与循环用法示例
May 15 #jQuery
jquery+css实现Tab栏切换的代码实例
May 14 #jQuery
jquery实现二级导航下拉菜单效果实例
May 14 #jQuery
JQuery获取可视区尺寸和文档尺寸及制作悬浮菜单示例
May 14 #jQuery
jquery 验证用户名是否重复代码实例
May 14 #jQuery
You might like
PHP+javascript液晶时钟
2006/10/09 PHP
PHP中使用glob函数实现一句话删除某个目录下的所有文件
2014/07/22 PHP
php备份数据库类分享
2015/04/14 PHP
在php7中MongoDB实现模糊查询的方法详解
2017/05/03 PHP
PHP有序表查找之二分查找(折半查找)算法示例
2018/02/09 PHP
prototype.js的Ajax对象
2006/09/23 Javascript
添加到收藏夹代码(兼容几乎所有的浏览器)
2007/01/09 Javascript
Open and Print a Word Document
2007/06/15 Javascript
js阻止冒泡及jquery阻止事件冒泡示例介绍
2013/11/19 Javascript
js实现跨域的方法实例详解
2015/06/24 Javascript
jQuery validate插件实现ajax验证重复的2种方法
2016/01/22 Javascript
JavaScript+canvas实现七色板效果实例
2016/02/18 Javascript
第十章之巨幕页头缩略图与警告框组件
2016/04/25 Javascript
jQueryUI DatePicker 添加时分秒
2016/06/04 Javascript
Bootstrap Metronic完全响应式管理模板学习笔记
2016/07/08 Javascript
微信小程序之picker日期和时间选择器
2017/02/09 Javascript
jQuery实现简单的回到顶部totop功能示例
2017/10/16 jQuery
vue.js 使用axios实现下载功能的示例
2018/03/05 Javascript
javascript实现的字符串转换成数组操作示例
2019/06/13 Javascript
element-ui 中使用upload多文件上传只请求一次接口
2019/07/19 Javascript
在Python中处理时间之clock()方法的使用
2015/05/22 Python
详解用python实现基本的学生管理系统(文件存储版)(python3)
2019/04/25 Python
CSS3美化表单控件全集
2016/06/29 HTML / CSS
NFL墨西哥官方商店:Tienda NFL
2017/11/28 全球购物
捷科时代的软件测试笔试题
2015/11/09 面试题
外贸员简历中的自我评价
2014/03/04 职场文书
四风问题查摆材料
2014/08/25 职场文书
幼儿园感恩节活动方案2014
2014/10/11 职场文书
开展批评与自我批评发言稿
2014/10/16 职场文书
本溪水洞导游词
2015/02/11 职场文书
社区青年志愿者活动总结
2015/05/06 职场文书
单位证明范文
2015/06/18 职场文书
公务员爱岗敬业心得体会
2016/01/25 职场文书
CSS实现漂亮的时钟动画效果的实例代码
2021/03/30 HTML / CSS
利用前端HTML+CSS+JS开发简单的TODOLIST功能(记事本)
2021/04/13 Javascript
MySQL库表太大怎么办? 数据库分库分表项目实践
2022/04/11 MySQL