function Port9100num()
{
    var v=document.getElementById("9100_Port_Number").value;
    if (isNaN(v))
    {
        alert('not a number');
        return;
    }
    var i=parseInt(v);
    if((i<9000) || (i>9999) || (i == ''))
    {
        alert(' not between 9000-9999');
        return;
    }
}
是要求输入的数字在9000和9999之间,希望为空的时候,也是输出第二个alert的消息,为什么不行啊?哪里错了,谢谢

解决方案 »

  1.   

    var v = document.getElementById("9100_Port_Number").value || 0;
      

  2.   

    function Port9100num(){
    var v = document.getElementById("9100_Port_Number").value;
    if (isNaN(v)) {
    alert('not a number');
    } else {
    v = parseInt(v);
    if(v < 9000) || v > 9999) {
    alert(' not between 9000-9999');
    }
    }
    }
      

  3.   

    function Port9100num(){
    var v = document.getElementById("9100_Port_Number").value || 0;
    if (isNaN(v)) {
    alert('not a number');
    } else {
    v = parseInt(v);
    if(v < 9000) || v > 9999) {
    alert(' not between 9000-9999');
    }
    }
    }
      

  4.   

    为空时,parseInt(v)的结果是NaN, i不是''了<script>
    function Port9100num()
    {
        var v=document.getElementById("9100_Port_Number").value;
        if (isNaN(v))
        {
            alert('not a number');
            return;
        }
        var i=parseInt(v);
        if((i<9000) || (i>9999) || isNaN(i))
        {
            alert(' not between 9000-9999');
            return;
        }
    }
    window.onload=function(){
    Port9100num();
    }
    </script>
    <input id="9100_Port_Number" value="">
      

  5.   

    把i == '' 改成 isNaN(i)