function fclick(sIPAddress){
    var obj = getObjectByName("omcip");
var flag = true;

if (trim(obj.value) ==''){
alert("IP不能为空 ");
}
if (trim(obj.value)!=''){
                验证IP合法性,该如何写?
            }
    return flag;       
             }

解决方案 »

  1.   

    var str = obj.value;
        var strlength= str.length;
        if(strlength<1){
            alert("输入的内容不能为空");
            return false;
        }
        if(chinese(str)){  
             return true;
        }
        else{
           if(strlength>15||strlength<7)          //IP的字段长度的限制
            {
                 alert("您输入要查找的IP长度不正确,必须是7到15位");
                 return false;
            }
             var patrn =/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/;//正则表达式,\d为数字,{1,3}一位或为三位.
             if(!patrn.exec(str)){
                 alert("您输入要查找的IP格式不正确,必须是000.000.000.000格式");
                 return false;
             }    
             var laststr;
             laststr= str.split(".");     //用.把字符串str分开
             var last_patrn=/^\d{1,3}$/;
             if(parseInt(laststr[0])>255||parseInt(laststr[1])>255||parseInt(laststr[2])>255||parseInt(laststr[3])>255) //判断IP每位的大小
             {
                    alert("您输入要查找的IP范围不正确,必须是0~255之间");
                    return false;
             }
             if(!last_patrn.exec(laststr[3]))
             {
                  alert("您输入要查找的IP格式不正确,必须是000.000.000.000格式");
                 return false;
             }
            return true;
            }
    }
      

  2.   

    <SCRIPT   LANGUAGE=javascript>  
      function   testIP(s){  
          var   arr=s.match(/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/);  
          if(arr==null)return   false;  
          for(i=1;i<arr.length;i++)if(String(Number(arr[i]))!=arr[i]||Number(arr[i])>255)return   false;  
          return   true;  
      }  
       
      alert(testIP("192.168.0.1"))//只有这个是正确的  
      alert(testIP("192.168.00.1"))  
      alert(testIP("192.168.0.a"))  
      alert(testIP("192.168.0.256"))  
      </script>