首页 新闻 会员 周边

js判断input输入框

0
悬赏园豆:10 [待解决问题]
$(function() {
    $("#insert")
            .click(
                    function() {
                        var td_delete = $("<td width='3%' class='delete'>").text("删除");
                        // 产品名称
                        var td_category = $("<td>").text($("#category").find("option:selected").text());
                        // 加工费
                        var td_categoryfee = $("<td>").text($("#categoryfee").text());
                        // 包装
                        var td_package = $("<td>").text($("#packagefee").text());
                        // 表面处理
                        var td_surface = $("<td>").text($("#surfacefee").text());
                        // 不含税
                        var td_qushui = $("<td class='qushui'>").text($("#qushui").text());
                        // 含税
                        var td_total = $("<td class='hanshui'>").text($("#price").text());
                        // 重量
                        var td_weight = $("<td><input onkeyup='return ValidateFloat(this,value)' class='weight' type='text' value='0' onfocus='this.select()'>");
                        // 不含税总价
                        var td_totalOuttax = $("<td><div class='allqushui'>");
                        // 含税总价
                        var td_totalintax = $("<td><div class='allhanshui'>");

                        var tr = $("<tr class='insertTr'>")
                        var table = $("table:last tr:last");
                        tr.append(td_delete).append(td_category).append(td_categoryfee).append(td_package).append(
                                td_surface).append(td_qushui).append(td_total).append(td_weight).append(td_totalOuttax)
                                .append(td_totalintax);
                        table.before(tr);
                        colorChange();
                        sum();
                    });
    
    function ValidateFloat(e, pnumber) {
        if (!/^\d+[.]?\d*$/.test(pnumber)) {
            e.value = /^\d+[.]?\d*/.exec(e.value);
        }
        return false;
    }
})

input是动态加入的,我现在只能做到输入小数并且只能有一个小数点,
我现在需要实现的功能是:在输入数字的时候,自动判别小数点后边的位数,只能输入小数点后三位,多余的自动四舍五入,并且不显示多余的。

请各位帮帮忙

horse_leo的主页 horse_leo | 初学一级 | 园豆:17
提问于:2015-01-27 10:53
< >
分享
所有回答(2)
0

问题关键在于四舍五入,这里给一点提示,

 Math.round(12.0065*1000)/1000; 它会返回12.007 接下来 发生的事就看你了

隔壁老王来了 | 园豆:99 (初学一级) | 2015-01-27 11:36
0

好办啊,方法里面作个判断,如果输入的小数点位数在3位以内 放行,ELSE 输入的是小数点后第四位通过上面仁兄的操作后数据返回。

KingMi | 园豆:1344 (小虾三级) | 2015-01-27 13:39

我写了代码但是不管用呀

支持(0) 反对(0) horse_leo | 园豆:17 (初学一级) | 2015-01-27 13:56

@horse_leo: 怎么会呢,解决了吗?

支持(0) 反对(0) KingMi | 园豆:1344 (小虾三级) | 2015-01-27 16:29
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册