zoukankan      html  css  js  c++  java
  • JS 验证输入框输入 只允许输入正实数(正整数,正小数),其他情况下不能输入 oninput事件

    input标签的oninput事件

    要求输入框只输入正实数,包括整数和小数。

    具体要求:整数部分不超过7位,可以没有小数,若有位数不超过2位。

    <input type="text" id="myId" value="0" style=" 100px;" oninput="InputOnchange(this.id);" />
    <script>
    function InputOnchange(thisId) {
        //验证数据
        var valueCurrent = document.getElementById(thisId).value;
        var value = valueCurrent;
        //不是数字
        if (/[^d]/.test(valueCurrent)) {
            //含小数点
            if (valueCurrent.indexOf(".") != -1) {
                var valueArray = valueCurrent.split(".");
                //小数点不能首位
                if (valueCurrent.indexOf(".") == 0) {
                    value = '';
                }
                //小数点只有一个
                else if (valueArray.length > 2) {
                    value = valueCurrent.substring(0, valueCurrent.length - 1);
                }
                //小数位数为2,且是数字
                else if (valueArray[1].length > 2) {
                    valueArray[1] = valueArray[1].substring(0, 2);//valueArray[1].length - 1
                    if (/[^d]/.test(valueArray[1])) {
                        valueArray[1] = valueArray[1].replace(/[^d]/g,'');
                    }
                    value = valueArray.join('.');
                }
                //小数部分也只能是数字
                else if (/[^d|.]/.test(valueCurrent)) {
                    value = valueCurrent.replace(/[^d|.]/g, '');
                }
            }
            else{
                value = valueCurrent.replace(/[^d]/g, '');
            }
        }//开头不能连续两个0
        else if (valueCurrent.substring(0,1) == "0") {
            if (valueCurrent.substring(1,2) != ".") {
                value = "0";
            }
        }
        //整数位数不超过7位
        else if (valueCurrent.length>7) {
            value = valueCurrent.substring(0,7);
        }
        document.getElementById(thisId).value = value;
        //...省略部分代码...//
    }
    </script> 
  • 相关阅读:
    3.30 DOM操作
    3.29 js例题
    3.28 函数
    3.27 数组例题
    Web 条件查询、分页查
    web页面增、删、改
    JDBC事务、下拉框
    JSTL、断点、JavaEE、DBUTils连接池
    jsp、el表达式
    Session技术 、jsp页面
  • 原文地址:https://www.cnblogs.com/dyhao/p/9983950.html
Copyright © 2011-2022 走看看