WebApp中input限制金额输入

控制输入:

/**
* 实时动态强制更改用户录入
**/
function amount(th){
    var regStrs = [
        ['^0(\\d+)$', '$1'], //禁止录入整数部分两位以上,但首位为0
        ['[^\\d\\.]+$', ''], //禁止录入任何非数字和点
        ['\\.(\\d?)\\.+', '.$1'], //禁止录入两个以上的点
        ['^(\\d+\\.\\d{2}).+', '$1'], //禁止录入小数点后两位以上
        ['^\d+(\.\d+)?$']
    ];
    for(i=0; i<regStrs.length; i++){
        var reg = new RegExp(regStrs[i][0]);
        th.value = th.value.replace(reg, regStrs[i][1]);
    }
}

function AmountInput()
{
    //敲击按键时触发  
    $("#txtAmount").bind("keypress", function(event) {  
        amount(this);
        //失去焦点是触发  
        $("#txtAmount").bind("blur", function(event) {  
            amount(this);
        });
     });
     $("#txtAmount").bind("keyup", function(event) {  
        amount(this);
     });
}


这样做控制了在PC上的输入,然而在手机上面输入22.25 然后将光标点到22中间并输入+  变成2+2.25 此时金额就出现问题了!


然后需要判断一下金额


function <pre name="code" class="javascript">$('#txtAmount').bind('input propertychange', function() {
checkNum(xx)
});
checkNum(num){ var pattern = /^(([1-9]\d{0,9})|0)(\.\d{1,2})?$/; var cv1 = num.substring(num.length-1,num.length); if(cv1==".") { return false; } else { return pattern.test(num); }}




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值