input 数字输入控制(含小数)
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 数字输入控制(含小数)的更多相关文章
- input内强制保留小数点后两位 位数不足时自动补0
input内强制保留小数点后两位 位数不足时自动补0 小数点后位数超出2位时进行四舍五入 需引入jquery包 1.11.2版本 1 function xiaoshu(x) 2 { 3 var f = ...
- Python 含小数的十、二进制相互转换
''' 二进制->十进制:bTod 整数部分:a乘以2的n次方(n:a后面的整数位数) 小数部分:a乘以2的-n次方(n:a是小数点后几位) 十进制->二进制dTob 整数部分:短除法(除 ...
- 金额input框控制只能小数点后有两位的有效数字
<%@include file="/WEB-INF/jsp/common/common.jsp" %> <title>价格录入限定</title> ...
- .net core mvc中input保留多位小数
本篇介绍:如何在mvc中使用html标签保留多位小数 你需要知道: @html标签的使用: https://blog.csdn.net/pasic/article/details/7093802 js ...
- [前端] html限制input输入数字和小数
限制input只能输入数字和小数 html代码 <input type="text" style="width:50px" name="widt ...
- vue 中 限制 input 输入数字、小数位数等
限制小数位数 <input type="number" @keydown="handleInput2" placeholder="请输入或查看& ...
- arcgis api for js入门开发系列七图层控制(含源代码)
上一篇实现了demo的地图分屏对比模块,本篇新增图层控制模块,截图如下(源代码见文章底部): 图层控制模块实现的思路如下: 1.在地图配置文件map.config.js里面配置图层目录树节点信息,作为 ...
- input属性控制弹出键盘类型
/** * ios弹起数字键盘有三种方法 * 1. <input type="number"> 可以弹起带有小数点的键盘,可以键盘不干净,有其它各种字符,可切换 ...
- input输入框控制字数
HTML: <input class = "remark" type = "text" maxlength = "500"> J ...
随机推荐
- java对象内存占用
一.前言想知道java对象在内存中的占用情况吗?感谢这位大神的无私分享. http://yueyemaitian.iteye.com/blog/2033046 二.原文的扩充1. 增加了代理jar包的 ...
- CSS margin属性与用法教程
margin 属性是css用于在一个声明中设置所有 margin 属性的简写属性,margin是css控制块级元素之间的距离, 它们之间是透明不可见的. margin属性包含了margin left ...
- centOS7 安装man中文手册
[root@localhost ~]# yum list | grep man.*zh -.el7 base [root@localhost ~]# yum -y install man-pages- ...
- 【转】在 Windows 10 下,配置 Kinect v2 可用于 Windows Hello 验证身份
先要修改下注册表HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DriverFlighting\Partner如果没有这个文件夹就创建一个吧 然后创建一个字符串类型的变量T ...
- 使用 Apache Commons CLI 开发命令行工具示例
Apache Commons CLI 简介 Apache Commons CLI 是 Apache 下面的一个解析命令行输入的工具包,该工具包还提供了自动生成输出帮助文档的功能. Apache Com ...
- 解决方案:android monkeyrunner:Timeout while trying to create chimp mananger(device = MonkeyRunner.waitForConnection()一直报错的问题)
monkeyrunner在执行device = MonkeyRunner.waitForConnection()一直报错的问题 (或者[main] [com.android.chimpchat.adb ...
- keepAlive参数详解
最近研究netty5.0中 发现http例子里面有关于KeepAlive的处理,于是研究了下 http://www.nowamagic.net/academy/detail/23350305
- 为jqgrid添加统计金额页脚
为jqgrid增加自定义用户数据 设计统计的金额总和 最后在jgrid组件中添加 最后的效果为:
- [sql]mysql5.6cmake安装/mysql5.7二进制安装
centos7上cmake编译安装mysql-5.6.36.tar.gz 系统环境 - 环境(安装前规划好主机名,mysql编译过程会用) [root@n1 mysql-5.6.36]# cat /e ...
- 【Unity】6.5 Time类、Mathf类、Coroutine类
分类:Unity.C#.VS2015 创建日期:2016-04-20 一.Time类 Unity引擎提供的Time类可获取和时间有关的信息.计算帧速率.调整时间流逝速度等. 1.成员变量 2.示例 ( ...