zoukankan      html  css  js  c++  java
  • 在实现文本框只能输入数字和小数点的基础上实现了价格样式(保留两位小数)

    我在测试充值接口的时候,输入金额保留到小数点后三位的时候程序就报错,后来就想到充值金额最多只能保留到小数点后两位,下面就是我用JQuery实现的详细代码,仅供参考,大神勿喷

     1 $(function() {
     2     //阻止数字键以外的按键输入
     3     $("#zf_money").keydown(function(e) {
     4         digitInput($(this),e);
     5     });
     6     $("#zf_money").keyup(function() {
     7         if($(this).val()=="") {
     8             $("#zfz_money").text("0");
     9         } else {
    10             $("#zfz_money").text($(this).val());
    11         }
    12 
    13     });
    14 
    15     function prevent(e) {
    16         e.preventDefault?e.preventDefault():e.returnValue=false;
    17     };
    18 
    19     function digitInput(el,e) {
    20         var e=e||window.event; // FF、Chrome IE下获取事件对象
    21         var c=e.charCode||e.keyCode; //FF、Chrome IE下获取键盘码
    22         var val=el.val();
    23         if(c==110||c==190) { // 110 (190) - 小(主)键盘上的点             
    24             (val.indexOf(".")>=0||!val.length)&&prevent(e); // 已有小数点或者文本框为空,不允许输入点   
    25 
    26         } else if((c!=8&&c!=46&& // 8 - Backspace, 46 - Delete
    27             (c<37||c>40)&& // 37 (38) (39) (40) - Left (Up) (Right) (Down) Arrow
    28             (c<48||c>57)&& // 48~57 - 主键盘上的0~9
    29             (c<96||c>105)) // 96~105 - 小键盘的0~9
    30             ||e.shiftKey) { // Shift键,对应的code为16
    31             prevent(e); // 阻止事件传播到keypress               
    32         } else if(c!=8&&c!=46&&val.indexOf(".")>=0) {
    33             (val.substring(val.indexOf(".")+1).length)>1&&prevent(e);
    34         } else if(c!=8&&c!=46&&val.length>5) {
    35             prevent(e);
    36         }
    37     };
    38 });
  • 相关阅读:
    Eclipse快捷键大全
    OOA/OOD/OOP
    SQL Server 存储过程(转)
    PowerDesigner 生成数据库方法(转)
    CDM和PDM的区别?(转)
    委托存在的理由
    提问回顾
    对软件工程常见概念的一些见解
    Gulp插件笔记
    Pascal-S代码注释
  • 原文地址:https://www.cnblogs.com/Gethin/p/4861225.html
Copyright © 2011-2022 走看看