1. 程式人生 > >HTML控制文字框只能輸入數字和小數點,並且只能保留小數點後兩位

HTML控制文字框只能輸入數字和小數點,並且只能保留小數點後兩位

1.給文字框新增一個onkeyup='clearNoNum(this)'點選事件

2.建立clearNoNum方法

function clearNoNum(obj) {

    obj.value = obj.value.replace(/[^\d.]/g,""); //清除"數字"和"."以外的字元

obj.value = obj.value.replace(/^\./g,""); //驗證第一個字元是數字而不是

obj.value = obj.value.replace(/\.{2,}/g,"."); //只保留第一個. 清除多餘的

obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");

obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3'); //只能輸入兩個小數

}

3將金額小寫轉換成大寫

function onlyNumber1(input, n) {

    var ret = "";

    var number =input.value;

        if (number != ""&& number!=null&&number!="0") {

                var unit = "仟佰拾億仟佰拾萬仟佰拾元角分",

                str = "";

                number += "00";

                var point = number.indexOf('.');

                if (point >= 0) {

                    number = number.substring(0, point) + number.substr(point + 1, 2);

                }

                unit = unit.substr(unit.length - number.length);

                for (var i = 0; i < number.length; i++) {

                    str += '零壹貳叄肆伍陸柒捌玖'.charAt(number.charAt(i)) + unit.charAt(i);

                }

                ret = str.replace(/零(仟|佰|拾|角)/g, "零").replace(/(零)+/g, "零").replace(/零(萬|億|元)/g, "$1").replace(/(億)萬|(拾)/g, "$1$2").replace(/^元零?|零分/g, "").replace(/元$/g, "元") + "整";

        }

    var a = document.getElementsByName("MoneyCapital")[0].id;

    document.getElementById(a).value=ret;    

    }