如题,网上找了很多都不太好实现。我的实现需求如下:

1、如果输入数字不带小数点那么自动加入两位小数,如:输入5,替换为5.00

2、输入5.,替换为5.00

3、输入5.1,替换为5.10

4、输入非数字,自动清空

Javascript代码如下:

//限制输入数字,只能输入两位
function checkNum(obj) {
//检查是否是非数字值
if (isNaN(obj.value)) {
obj.value = "0.00";
return;
}
if (obj != null) {
//没有小数时自动补零
if (obj.value.indexOf('.') == -) {
if (obj.value == "") {
obj.value = "0.00";
} else {
obj.value += ".00";
}
}
if (obj.value.toString().split(".")[].length < ) {
if (obj.value.toString().split(".")[].length == ) {
obj.value += "";
}
if (obj.value.toString().split(".")[].length == ) {
obj.value += "";
}
}
//检查小数点后是否对于两位
if (obj.value.toString().split(".").length > && obj.value.toString().split(".")[].length > ) {
obj.value = obj.value.substring(, obj.value.indexOf('.') + );
}
}
}
function checkNumForEnter(obj) {//回车事件拦截
if (event.keyCode == ) {
this.checkNum(obj);
}
}

使用方法如下:

<asp:TextBox id="txtB_MinAmount" runat="server" Width="200px" onblur="checkNum(this)" onkeypress="checkNumForEnter(this)"></asp:TextBox>

注意,需要拦截onblur,onkeypress两个事件。

input使用javascript限制输入带小数的数字的更多相关文章

  1. 【前端开发】限制input输入保留两位小数

    <input type="text" name='amount' id="cash_num" placeholder="请输入金额" ...

  2. input输入限制,只允许输入数字和“.”,长度不得超过20

    <input style="margin-top: 10px;width: 100%;text-align:center;" id="removeArea" ...

  3. javascript正则提取字母和数字小数

    var item = {name:"PM2.5"}; item.nameFirst = item.name.replace(/[^a-zA-Z]/g, ''); item.name ...

  4. JavaScript中实现小数点后保留2位

    在项目中有时候会遇到要求输入的数字是整数或者小数点后绑定2位小数,因此可以用.toFixed(2)方法 下面是关于toFixed()方法的demo: <input type="numb ...

  5. input 数字输入控制(含小数)

    1,可以在keypress里验证输入的字符的合法性. // 数字控件的入力控制 $("input.comma,input.comma1,input.comma2").keypres ...

  6. input框设置onInput事件只能输入数字,能兼容火狐IE9

    使用onInput()事件 onInput()是 HTML5 的标准事件,对于检测 textarea, input:text, input:password 和 input:search 这几个元素通 ...

  7. input输入大于0的小数和整数

    <input onkeyup="num(this)"onbeforepaste="num(this)"> <script src='jquer ...

  8. double保持精度,防止小数点后数字的丢失的小方法

    一般情况下,输入带小数点的字面值,编译器会把它解析成double 类型. 例如:一个字面值被直接放到代码中,由于带小数点所以,默认值为double类型   输出结果是:1.12345678912345 ...

  9. javascript 中关于对象转换数字值的一些特点

    下面是摘至<Javascript 高级程序设计第三版>里的一段话 是关于对象转换数字值的一些规则 "在应用于对象时,先调用对象的valueOf()方法以取得一个可供操作的值.然后 ...

随机推荐

  1. PHP简单post验证绕过

    if($_POST[user] && $_POST[pass]) { $conn = mysql_connect("*******", "****&quo ...

  2. You are note Hk

    直接打开是forbidden  最后一句话提示 于是改包 第二次还是修改包 Mozilla/5.0 (MSIE 7.0; Windows NT 6.0;.NET CLR 9.9)

  3. shell+curl监控网站页面(域名访问状态),并利用sedemail发送邮件

    应领导要求,对公司几个主要站点的域名访问情况进行监控.下面分享一个监控脚本,并利用sendemail进行邮件发送. 监控脚本如下:下面是写了一个多线程的网站状态检测脚本,直接从文件中读出站点地址,然后 ...

  4. oracle用sqlplus创建新用户,不是plsql developer

    1.sqlplus /nolog 2.conn /as sysdba 3.alter user system identified by "123456"; 4.alter use ...

  5. win server 2008配置ftp无法登陆问题的解决办法

    解决办法放在最前面,方便急需答案的同学: 创建了ftp使用的windows账户后,一定要给该账户添加ftp目录的权限,如下图所示,为新账户添加权限后(且设置了“ftp身份验证”),即可正常访问ftp: ...

  6. Socket Programming in C#--Conclusion

    Conclusion And that's all there is to it! Here is how our client looks like Here is how our server l ...

  7. Camera中对焦模式总结

    1,相机对焦模式有以下几种: auto  //自动 infinity //无穷远 macro //微距 continuous-picture //持续对焦 fixed //固定焦距   2,常见对焦模 ...

  8. INADDR_ANY的确切含义

    INADDR_ANY就是inet_addr("0.0.0.0") 首先,需要明确的是当服务器的监听地址是INADDR_ANY时设置的是服务器的IP地址. 其次,当服务器的监听地址是 ...

  9. 《深入理解计算机系统》深入实践之——vim深入研究

    vim 用户手册中,大部分的例子都是在讲 vim 如何高效编写代码,由此可见,vim 是一款面向于程序员的多功能编辑器,即使某些功能 vim 无法直接完成,借助其丰富的插件资源,必定可以达成目标,这就 ...

  10. 【面试必备】Swift 面试题及其答案

    初级 问题1- Swift 1.0 or later 什么是optional类型,它是用来解决什么问题的? 答案:optional类型被用来表示任何类型的变量都可以表示缺少值.在Objective-C ...