日期:2014-05-18  浏览次数:20701 次

JS如何判断IP地址的合法性
function fclick(sIPAddress){
var obj = getObjectByName("omcip");
var flag = true;

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

   
  }

------解决方案--------------------
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;
}
}