<html>
<head>
<script language="JavaScript">
<!-- Hide
/* 
*/
function validIp(ipstr)
{
   
//var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
 alert(ipstr);
    var IpPat=/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/;
  var IPArray=ipstr.match(IpPat);
if (IPArray!=null) 
{ // this is an IP address
for (var i=1;i<=4;i++)
{
if (IPArray[i]>255) 
{
alert(" IP address is invalid!");
return false;
     }
}
}else{
alert("IP address is invalid2!"); 
return false;
}}
// -->
</script>
</head><body>
<form name=emailform onSubmit="validIp(this.ipaddr.value);return false;">
   Your IP Address:  <input type=text name="ipaddr"><br>                        <input type=submit value="Submit">
</form>

解决方案 »

  1.   

    <html>
    <head>
    <script language="JavaScript">
    <!-- Hide
    /* 
    */
    function validIp(ipstr)
    {
       
    //var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
        var IpPat=new RegExp("^([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})$");
      var IPArray=ipstr.match(IpPat);
    if (IPArray!=null) 
    { // this is an IP address
    for (var i=1;i<=4;i++)
    {
    if (IPArray[i]>255) 
    {
    alert(" IP address is invalid!");
    return false;
         }
    }
    }else{
    alert("IP address is invalid2!"); 
    return false;
    }}
    // -->
    </script>
    </head><body>
    <form name=emailform onSubmit="return validIp(this.ipaddr.value);">
       Your IP Address:  <input type=text name="ipaddr"><br>                        <input type=submit value="Submit">
    </form>
      

  2.   

    qiushuiwuhen,非常感谢你给我回答问题,要不然我今天都没法解决这个问题。能告诉我我的表达式错什么的方吗!为什么不能匹配。
      

  3.   

    \d
    =>
    [0-9]
    或者
    \\d
    因为在引号中\是转义符,所以需要\\表示\,如下<html>
    <head>
    <script language="JavaScript">
    <!-- Hide
    /* 
    */
    function validIp(ipstr)
    {
       
    //var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
        var IpPat=new RegExp("^(\\d{1,3})\.(\\d{1,3})\.(\\d{1,3})\.(\\d{1,3})$");
      var IPArray=ipstr.match(IpPat);
    if (IPArray!=null) 
    { // this is an IP address
    for (var i=1;i<=4;i++)
    {
    if (IPArray[i]>255) 
    {
    alert(" IP address is invalid!");
    return false;
         }
    }
    }else{
    alert("IP address is invalid2!"); 
    return false;
    }}
    // -->
    </script>
    </head><body>
    <form name=emailform onSubmit="return validIp(this.ipaddr.value);">
       Your IP Address:  <input type=text name="ipaddr"><br>                        <input type=submit value="Submit">
    </form>
      

  4.   

    谢谢,你天天来上网吗!能告诉你的mail地址吗,和你交流交流吗!
    我以前在windows 下开发,现在跑道unix下面很多东西不懂。这就是我在写脚本时遇到的问题。