HTML的金额输入框,三位一逗号的格式

HTML的金额输入框,三位一逗号的格式,第1张

边输入数字,边显示三位一逗号格式是因为调用的文本框的keyup事件,而你想要在全部输入完鼠标点击其他处才调用这种格式的话,可以改为失去焦点时调用,即可以将keyup事件换成blur事件,即失去焦点时事件;这样就可以实现你说的那种效果了。

这个是jq的效果

直接上代码,复制后新建html文件可预览

<script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>

输入小写金额:<input id="money" onblur="showChineseAmount()" type="text"><span id="C_money"></span>

<script type="text/javascript">

function showChineseAmount() {

        var amstr = $("#money").val()

        var leng = amstr.toString().split('.').length

        if (leng == 1) {

            $("#money").val($("#money").val() + ".00")

        }

        $("#C_money").html(Arabia_to_Chinese($("#money").val()))

}

function Arabia_to_Chinese(Num) {

    for (i = Num.length - 1 i >= 0 i--) {

        Num = Num.replace(",", "")

        Num = Num.replace(" ", "")

    }

    Num = Num.replace("¥", "")

    if (isNaN(Num)) {

        return

    }

    part = String(Num).split(".")

    newchar = ""

    for (i = part[0].length - 1 i >= 0 i--) {

        if (part[0].length > 10) {

            return ""

        }

        tmpnewchar = ""

        perchar = part[0].charAt(i)

        switch (perchar) {

            case "0": tmpnewchar = "零" + tmpnewchar break

            case "1": tmpnewchar = "壹" + tmpnewchar break

            case "2": tmpnewchar = "贰" + tmpnewchar break

            case "3": tmpnewchar = "叁" + tmpnewchar break

            case "4": tmpnewchar = "肆" + tmpnewchar break

            case "5": tmpnewchar = "伍" + tmpnewchar break

            case "6": tmpnewchar = "陆" + tmpnewchar break

            case "7": tmpnewchar = "柒" + tmpnewchar break

            case "8": tmpnewchar = "捌" + tmpnewchar break

            case "9": tmpnewchar = "玖" + tmpnewchar break

        }

        switch (part[0].length - i - 1) {

            case 0: tmpnewchar = tmpnewchar + "元" break

            case 1: if (perchar != 0) tmpnewchar = tmpnewchar + "拾" break

            case 2: if (perchar != 0) tmpnewchar = tmpnewchar + "佰" break

            case 3: if (perchar != 0) tmpnewchar = tmpnewchar + "仟" break

            case 4: tmpnewchar = tmpnewchar + "万" break

            case 5: if (perchar != 0) tmpnewchar = tmpnewchar + "拾" break

            case 6: if (perchar != 0) tmpnewchar = tmpnewchar + "佰" break

            case 7: if (perchar != 0) tmpnewchar = tmpnewchar + "仟" break

            case 8: tmpnewchar = tmpnewchar + "亿" break

            case 9: tmpnewchar = tmpnewchar + "拾" break

        }

        newchar = tmpnewchar + newchar

    }

    if (Num.indexOf(".") != -1) {

        if (part[1].length > 2) {

            alert("小数点之后只能保留两位,系统将自动截段")

            part[1] = part[1].substr(0, 2)

        }

        for (i = 0 i < part[1].length i++) {//for2

            tmpnewchar = ""

            perchar = part[1].charAt(i)

            switch (perchar) {

                case "0": tmpnewchar = "零" + tmpnewchar break

                case "1": tmpnewchar = "壹" + tmpnewchar break

                case "2": tmpnewchar = "贰" + tmpnewchar break

                case "3": tmpnewchar = "叁" + tmpnewchar break

                case "4": tmpnewchar = "肆" + tmpnewchar break

                case "5": tmpnewchar = "伍" + tmpnewchar break

                case "6": tmpnewchar = "陆" + tmpnewchar break

                case "7": tmpnewchar = "柒" + tmpnewchar break

                case "8": tmpnewchar = "捌" + tmpnewchar break

                case "9": tmpnewchar = "玖" + tmpnewchar break

            }

            if (i == 0) tmpnewchar = tmpnewchar + "角"

            if (i == 1) tmpnewchar = tmpnewchar + "分"

            newchar = newchar + tmpnewchar

        }

    }

    while (newchar.search("零零") != -1)

        newchar = newchar.replace("零零", "零")

    newchar = newchar.replace("亿零万", "亿")

    newchar = newchar.replace("零亿", "亿")

    newchar = newchar.replace("亿万", "亿")

    newchar = newchar.replace("零万", "万")

    newchar = newchar.replace("零元", "元")

    newchar = newchar.replace("零角", "")

    newchar = newchar.replace("零分", "")

    if (newchar.charAt(newchar.length - 1) == "元" || newchar.charAt(newchar.length - 1) == "角")

        newchar = newchar + "整"

    return newchar

}

</script>


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/7250240.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-03
下一篇 2023-04-03

发表评论

登录后才能评论

评论列表(0条)

保存