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

标签 javascript html match nan getelementsbyclassname

我想检查 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 将中断函数的进一步执行并返回该值。

关于javascript - 检查 JavaScript 中的 'undefined' && ip 格式不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43338162/

相关文章:

javascript - 如何在不同页面中选择一个id

javascript - 如何在 TinyMCE 编辑时触发页面离开警告?

html - 如何使 CSS 填充在 Chrome 中工作但在 Firefox 或 Safari 中不起作用?

jquery - 页面加载 jQuery 后匹配 div 高度

javascript - 阻止 btn,直到至少选中一个偏移量的 1 个复选框

javascript - Angular 2 Resolve - 局部变量范围

mysql - 从一个表中选择包含另一个表中一长串单词中的任何单词的行

php - 比较数组中的元素并循环遍历每个 php

javascript - 一个页面中有两个或多个 SVG。如何在单击按钮时为它们设置动画?

javascript - 流(flowtype)和 react : defaultProps are not controlled?