关闭

输入1000以内的金额,精确度不超过两位,超出只保留两位。

94人阅读 评论(0) 收藏 举报

需求:1.最大:1000.00 ;

            2.
最小:0.01;
            3.精确到小数点后2位;
         4.打赏时自定义金额输入后不缓存,下次打开打赏窗口需要从新输入;
         5.打赏金额超过最大金额或者输入错误时(精度超过0.01,金额无效0.00),点击打赏时返回金额未输入状态;
         6.打赏金额输入位数限制:最长输入4位数,小数点后最多2位。
<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
    <script src="jquery.2.js"></script>
</head>
<body>
<input type="text" placeholder="最多不超过1000元" id="haha"/>
<input type="button" value="打赏" id="dashang"/>
<script>
    var thisValue = "";
    //不带小数的正则匹配
    var regexp1 = /^([0-9]|[1-9]\d|[1-9]\d\d|1000)\.?$/;
    //带小数的正则匹配
    var regexp2 = /^([0-9]|[1-9]\d|[1-9]\d\d|1000)\.\d{1,2}$/;
    $("#haha").on("keyup", function () {
        if (regexp1.test($(this).val()) || regexp2.test($(this).val())||$(this).val()=="") {
            thisValue = $(this).val();
            if(parseFloat($("#haha").val())>1000){
                $("#haha").val("1000.00");
            }
        }
        else {
            $(this).val(thisValue);
             if(parseFloat($("#haha").val())>1000){
                $("#haha").val("1000.00");
            }
        }
    });
    $("#dashang").on("click", function () {
        if (parseFloat($("#haha").val()) == 0) {
            alert("没钱不能打赏哦");
            $("#haha").val("");
            return false;
        }
        else if (isNaN(parseFloat($("#haha").val()))) {
            alert("请输入打赏金额");
        }
        else {
            alert("打赏成功");
        }
    });
</script>
</body>
</html>

小数点超出两位的话第三位会被截断,四位数字除了1000其他最大只能输入3位。
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:4172次
    • 积分:249
    • 等级:
    • 排名:千里之外
    • 原创:19篇
    • 转载:5篇
    • 译文:2篇
    • 评论:0条