zoukankan      html  css  js  c++  java
  • 格式化字符串:金额

    input 输入框输入的数字转换成金额格式:

    /*
     * caculate
     * input:  100000 
     * output: 100,000
    */
    (function ($) {
    
        var $input = $("#cacu-input"),
            $btn = $("#cacu-btn"),
            $result = $("#cacu-result"),
            result = 0,
            // 只允许数字及后退
            filterNum = function (e) {
                // 数字和后退键以外禁用
                if ((e.keyCode < 48 || e.keyCode > 57) && e.keyCode !== 8) {
                    e.preventDefault();
                    return false;
                }
            },
            // 格式化金额
            formatCurrency = function (num) {
                num = num.toString().replace(/$|\,/g, '');
    
                if (isNaN(num)) {
                    num = "0";
                }
    
                var sign, cents;  // 正负  小数
    
                sign = ((Number(num) >= 0) ? '' : '-');  //   正负
                num = Math.abs(num*100 + 0.50000000001);
                cents = num%100;
    
                num = Math.floor(num/100).toString();
                if (cents < 10) {
                    cents = '0' + cents;
                }
    
                for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++) {
                    num = num.substring(0,num.length-(4*i+3))+','+
                    num.substring(num.length-(4*i+3));
                }
                
                return (sign + num);  // + '.' + cents;
            },
            getCurrency = function (num) {
                return num.replace(/$|\,/g, '');
            };
    
        $input.on("keypress", function (e) {
            filterNum(e);
        }).on("keyup", function (e) {
            var val = $(this).val();
            val = formatCurrency(val);
    
            $(this).val(val);
        });
    
        $btn.on("click", function (e) {
            e.preventDefault();
            var money = $input.val();
            money = getCurrency(money);
    
            result = parseInt(money/500, 10);
            $result.text(result);
        });
    })(window.jQuery);
  • 相关阅读:
    express中间件
    复习node中加载静态资源--用express+esj
    有关es6的模块化
    es6转码和package.json中的配置
    MySQL必知必会--使用子查询
    MySQL必知必会--分 组 数 据
    MySQL必知必会--汇 总 数 据
    mysql必知必会--使用数据处理函数
    拼凑可导的充分必要条件
    递推数列极限存在证明
  • 原文地址:https://www.cnblogs.com/xiankui/p/4128357.html
Copyright © 2011-2022 走看看