检查 'undefined' && javascript 中的 ip 格式不起作用

check 'undefined' && ip format in javascript is not working

我想查看 IP 地址列表..

'null'值和正确的 ip 格式....

HTML

的一部分
<form name="save" method="post" onsubmit="return validateForm()" action="confresult.php" target="resultIframe">

          <tr id="ipcnt"><td colspan="2">No. of IP</td>
        <td><select name="ipcnt" size="1" onChange="switch();">
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="4">4</option>
        <option value="5">5</option>
        <option value="6">6</option>
        <option value="7">7</option>
        <option value="8">8</option>
          </select></td></tr>
<tr id="mmeip[0]"><td colspan="2">IP1</td>
<td><input type="text" class="mmeIp" name="remoteip[0]" size="20" maxlength="15" value="10.1.35.31"></td></tr>
<tr id="mmeip[1]"><td colspan="2">IP2</td>
<td><input type="text" class="mmeIp" name="remoteip[1]" size="20" maxlength="15" value="10.1.35.32"></td></tr>
<tr id="mmeip[2]"><td colspan="2">IP3</td>
<td><input type="text" class="mmeIp" name="remoteip[2]" size="20" maxlength="15" value=""></td></tr>
<tr id="mmeip[3]"><td colspan="2">IP4</td>
<td><input type="text" class="mmeIp" name="remoteip[3]" size="20" maxlength="15" value=""></td></tr>
<tr id="mmeip[4]"><td colspan="2">IP5</td>
<td><input type="text" class="mmeIp" name="remoteip[4]" size="20" maxlength="15" value=""></td></tr>
<tr id="mmeip[5]"><td colspan="2">IP6</td>
<td><input type="text" class="mmeIp" name="remoteip[5]" size="20" maxlength="15" value=""></td></tr>
<tr id="mmeip[6]"><td colspan="2">IP7</td>
<td><input type="text" class="mmeIp" name="remoteip[6]" size="20" maxlength="15" value=""></td></tr>
<tr id="mmeip[7]"><td colspan="2">IP8</td>
<td><input type="text" class="mmeIp" name="remoteip[7]" size="20" maxlength="15" value=""></td></tr>

Javascript 函数的一部分是...

  if(validateIPaddress()==false){
    return false;
  }
function validateIPaddress(){
   var ipformat = /^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/;
   var ip = document.getElementsByClassName("mmeIp");
   var cnt = document.save.ipcnt;
   for(var i = 0; i < cnt.value; i++) {
        if(ip[i].value != "") {
            if(ip[i].value.match(ipformat)){
                return true;
            } else{
                alert("Please enter the valid IP address format for the\n [IP] field. \n");
                ip[i].focus();
                return false;
            }
        } else{
            alert("Please fill out the [IP] field.");
            ip[i].focus();
            return false;
        }
    }
}

它仅适用于第一个 IP(mmeIp[0]) 地址。我认为 for() 循环不起作用...

为什么只检查第一个 ip???

我如何查看 'ipcnt' ip 的数量??

因为如果第一个未通过验证,您将使用 return 语句破坏函数。 return 将中断函数的进一步执行和 returns 该值。