我在一个页面里面可以设置可以输入数字的文本框或者下拉框(可以输值就行了),如果我给了值的话,我不能够比原来的小,也就是说我输入值的话,只能输入比原来的大,不能比原来的数据小,不知道怎么弄,谁提下建议

解决方案 »

  1.   

    只是在一个页面中?
    首先要把最大的值存储下来。
    onblur的时候,获取到当前值,然后和原来值比较,如果小,则把输入框清空或者直接赋值为最大值
      

  2.   


    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <html>
    <head>
        <title>Untitled</title>
    </head><body>
    <form method=post>
    数字:<input type="text" name="num" onblur="checkNum(this)"><br>
    </form>
    <script language=javascript>
    var value=null;
    function checkNum(obj)
    {
       var regex=/\d+/g if(!regex.test(obj.value)){
       alert("请输入数字");
        obj.value="";
    }else{
       if(value==null){
          value=obj.value;
       }else{
           if(value>obj.value){
            alert("您输入的数字比上次小");
            obj.value="";
           }
       }
    }
    }
    </script>
    </body>
    </html>
      

  3.   

    也写了一个<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <html>
    <head>
        <title>验证数字</title>
    <script language="javascript" type="text/javascript">
    var oldValue ;
    function keepValue(oldVal){
    oldValue = oldVal;
    }
    function checkNum(val){
    if(oldValue > val){
    alert("所填的数值比已有的小");
    return false;
    }
    }
    </script>
    </head><body>
    数字:<input type="text" name="num" value="6" onfocus="keepValue(this.value);" onblur="checkNum(this.value);" /><br>
    </body>
    </html>