1,可以在keypress里验证输入的字符的合法性。

  1. // 数字控件的入力控制
  2. $("input.comma,input.comma1,input.comma2").keypress(function (e) {
  3. var key = String.fromCharCode(e.charCode);
  4. // 数字和点以外不能输入
  5. if (!/[0-9.-]/.test(key)) {
  6. return false;
  7. }
  8.  
  9. var digit = 0;
  10. if ($(this).hasClass("comma")) {
  11. digit = 0;
  12. } else if ($(this).hasClass("comma1")) {
  13. digit = 1;
  14. } else if ($(this).hasClass("comma2")) {
  15. digit = 2;
  16. }
  17. var previewText = this.value.substring(0, this.selectionStart) + key + this.value.substring(this.selectionEnd);
  18. if (previewText != '-' && previewText != '.' && !$.isNumeric(previewText)) {
  19. return false;
  20. }
  21.  
  22. if (digit == 0) {
  23. // 整数的时候、不能输入点
  24. if (previewText.indexOf('.') > -1) {
  25. return false;
  26. }
  27. } else {
  28. // 小数的时候、超过小数位数不能输入
  29. var parts = previewText.split('.');
  30. if (parts.length > 1) {
  31. if (parts[1].length > digit) {
  32. return false;
  33. }
  34. }
  35. }
  36. });

2,在光标失去blur事件里,值已经输入完了,可以做值范围检查。或者由于拷贝过来的文字,keypress是验证不到的,可以再做一次数值检查,

不是数字的话,直接清空。

  1. // 光标失去的时候,检查输入类型,值范围
  2. $("input.comma,input.comma1,input.comma2").blur(function (e) {
  3. var val = removeComma(this.value);
  4. if (!$.isNumeric(val)) {
  5. // 数字以外,直接清空
  6. $(this).val('');
  7. return false;
  8. }
  9. // 值范围检查
  10. if ($(this).attr("numberRange")) {
  11. var range = $(this).attr("numberRange").split(',');
  12. var min = parseFloat(range[0]);
  13. var max = parseFloat(range[1]);
  14. var curValue = parseFloat(val);
  15.  
  16. // 最大値
  17. if (curValue > max) {
  18. $(this).val(format_number(max));
  19. $(this).trigger("change");
  20. }
  21. // 最小値
  22. if (val < min) {
  23. $(this).val(format_number(min));
  24. $(this).trigger("change");
  25. }
  26. }
  27. });

input 数字输入控制(含小数)的更多相关文章

  1. input内强制保留小数点后两位 位数不足时自动补0

    input内强制保留小数点后两位 位数不足时自动补0 小数点后位数超出2位时进行四舍五入 需引入jquery包 1.11.2版本 1 function xiaoshu(x) 2 { 3 var f = ...

  2. Python 含小数的十、二进制相互转换

    ''' 二进制->十进制:bTod 整数部分:a乘以2的n次方(n:a后面的整数位数) 小数部分:a乘以2的-n次方(n:a是小数点后几位) 十进制->二进制dTob 整数部分:短除法(除 ...

  3. 金额input框控制只能小数点后有两位的有效数字

    <%@include file="/WEB-INF/jsp/common/common.jsp" %> <title>价格录入限定</title> ...

  4. .net core mvc中input保留多位小数

    本篇介绍:如何在mvc中使用html标签保留多位小数 你需要知道: @html标签的使用: https://blog.csdn.net/pasic/article/details/7093802 js ...

  5. [前端] html限制input输入数字和小数

    限制input只能输入数字和小数 html代码 <input type="text" style="width:50px" name="widt ...

  6. vue 中 限制 input 输入数字、小数位数等

    限制小数位数 <input type="number" @keydown="handleInput2" placeholder="请输入或查看& ...

  7. arcgis api for js入门开发系列七图层控制(含源代码)

    上一篇实现了demo的地图分屏对比模块,本篇新增图层控制模块,截图如下(源代码见文章底部): 图层控制模块实现的思路如下: 1.在地图配置文件map.config.js里面配置图层目录树节点信息,作为 ...

  8. input属性控制弹出键盘类型

    /**   * ios弹起数字键盘有三种方法   * 1. <input type="number"> 可以弹起带有小数点的键盘,可以键盘不干净,有其它各种字符,可切换 ...

  9. input输入框控制字数

    HTML: <input class = "remark" type = "text" maxlength = "500"> J ...

随机推荐

  1. [转] JDBC中的Statement和PreparedStatement的区别

    以Oracle为例吧 Statement为一条Sql语句生成执行计划,如果要执行两条sql语句select colume from table where colume=1;select colume ...

  2. virtualbox 最小化安装centos7 配置双网卡(nat和桥接)记录----已经过期

    该文章已经过期   请参考另一篇文章:virtualbox 安装centos7 配置桥接网卡,实现主机和虚拟机互通,虚拟机可以访问外网,解决无法上网问题   先说明一下为什么要配置双网卡? 配置nat ...

  3. mysql在插入或更新的时候对一个字段赋递增值

    在我们有一个需求是更新某个表里面的某个字段,让这个字段变成一个递增的值,或者插入某个表中使得某些字段的值是递增的.下面我们来看看具体的操作: 更改表字段为递增 首先设置一个变量,初始值为任意数值,这里 ...

  4. 7 款顶级的开源 Web 分析软件

    Web 分析无非就是 Web 流量的测量.但它并不限于测量网络流量,还包括: 分析 数据采集 为了了解和优化网页而上报网络数据 Google Analytics是最广泛使用的基于云的网络分析服务.不过 ...

  5. Vue(七):computed计算属性

    简介 计算属性关键词: computed. 计算属性在处理一些复杂逻辑时是很有用的. 实例1 可以看下以下反转字符串的例子: <div id="app"> {{ mes ...

  6. 牛腩学Kotlin做Android应用

    牛腩学Kotlin做Android应用,蹭热度视频,边学边做, 01-kotlin插件安装及hello world 02-kotlin基础语法速览 哔哩哔哩观看地址:http://www.bilibi ...

  7. Vivado神器之DocNav

    Vivado2014安装完成以后会有2个文件出现在桌面上,具体如下图: 上一个是vivado的软件,是主要的工具,但是一定不要忽略下面一个DocNav,今天我要讲的就是这个工具,打开一个会看到这样一个 ...

  8. java 字符串格式化

    转:http://blog.sina.com.cn/s/blog_af26e3330101988v.html 1.对整数进行格式化:%[index$][标识][最小宽度]转换方式 我们可以看到,格式化 ...

  9. vue-webpack快速建立项目模板

  10. 菜鸟教程之工具使用(一)——Git的基本使用

    Git是进来比较火的版本控制工具,大有取代svn的趋势.关于两种孰好孰坏我就不多费口舌了,网上关于二者的对比文章比比皆是.作为一个IT人员关注行业的发展动态是必须的,所以抽空研究了一下Git的使用.跟 ...