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

    // 数字控件的入力控制
$("input.comma,input.comma1,input.comma2").keypress(function (e) {
var key = String.fromCharCode(e.charCode);
// 数字和点以外不能输入
if (!/[0-9.-]/.test(key)) {
return false;
} var digit = 0;
if ($(this).hasClass("comma")) {
digit = 0;
} else if ($(this).hasClass("comma1")) {
digit = 1;
} else if ($(this).hasClass("comma2")) {
digit = 2;
}
var previewText = this.value.substring(0, this.selectionStart) + key + this.value.substring(this.selectionEnd);
if (previewText != '-' && previewText != '.' && !$.isNumeric(previewText)) {
return false;
} if (digit == 0) {
// 整数的时候、不能输入点
if (previewText.indexOf('.') > -1) {
return false;
}
} else {
// 小数的时候、超过小数位数不能输入
var parts = previewText.split('.');
if (parts.length > 1) {
if (parts[1].length > digit) {
return false;
}
}
}
});

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

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

    // 光标失去的时候,检查输入类型,值范围
$("input.comma,input.comma1,input.comma2").blur(function (e) {
var val = removeComma(this.value);
if (!$.isNumeric(val)) {
// 数字以外,直接清空
$(this).val('');
return false;
}
// 值范围检查
if ($(this).attr("numberRange")) {
var range = $(this).attr("numberRange").split(',');
var min = parseFloat(range[0]);
var max = parseFloat(range[1]);
var curValue = parseFloat(val); // 最大値
if (curValue > max) {
$(this).val(format_number(max));
$(this).trigger("change");
}
// 最小値
if (val < min) {
$(this).val(format_number(min));
$(this).trigger("change");
}
}
});

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. 【转载并整理】mysql 1293错误 建表两个timestamp

    http://www.jb51.net/article/50878.htm 这里要使用到mysql的触发器

  2. pyspark 随机森林特征重要性

    # IMPORT >>> import numpy >>> from numpy import allclose >>> from pyspark ...

  3. 如何不使用Navigator空间实现跳转页面?

    //引入 Loading页面 主页面 登录页等页面组件 constructor(props) { super(props); this.state = { 登录状态: 等待检查 }; } compon ...

  4. tomcat重启步骤

    tomcat重启步骤1.切换到tomcat目录cd /home/tomcat-home/tomcat-erp/bin2.关闭tomcatsh shutdown.sh3.启动tomcatsh start ...

  5. Android Studio 解决 Gradle 依赖冲突的问题

    Android Studio 解决 Gradle 依赖冲突的问题 参考链接: Android Studio(Gradle)解决库依赖冲突问题:http://www.mobibrw.com/2016/3 ...

  6. go 从入门到精通(二)基本数据类型和操作符

    一.文件名&关键字&标识符 所有go源码都是以.go结尾 标识符以字母或下划线开头,大小写敏感 下划线_是特殊标识符,用户忽略结果 保留关键字 导入包时可以设置别名 下面是保留关键字: ...

  7. 谷歌Chrome浏览器小于12px字号显示的BUG

    webkit的私有属性:html{-webkit-text-size-adjust:none;}

  8. psycopg事务

    1.事务的特性 原子性,要么完成,要么都不完成 2.psycopg的事务特点 在psycopg中,事务是由connection处理的,当第一次一个命令发送给数据库时(开启数据库操作游标), 一个事务就 ...

  9. alluxio网络流量异常分析【转】

    1. 介绍 2. 准备工作 2.1 tcpdump 2.2 winshark 2.3 安装iftop 2.4 alluxio网络通信相关的端口 3.iftop 锁定消耗流量最大的端口 4. dump数 ...

  10. vim复制,粘贴,删除,撤销,替换,光标移动等用法

    我接触linux的时候,用的是nano这个文本编辑器,个人觉得他的最大优点就是方便,快速.打开文件,修改文件,到退出都十分的快速,简单.这一点上比vi,vim要强,但是nano不能显示彩色字,不能进行 ...