函数不会运行代码的第二部分,该如何解决呢?

时间:2018-11-12 11:49:03

标签: javascript

这是我的代码

function CheckForm_1() {
    var F1 = document.getElementById('srch');
    var Lgth = document.getElementById('srch');
    if (F1.value == "") {
        document.getElementById("Empty_Err");
        Empty_Err.style.display = 'inline';
        Empty_Err.stylebackgroundColor = 'linen';
        return false;
    } else {
        return true;
    }
    if (Lgth.value.length > 17 || Lgth.value.length < 4) {
        document.getElementById("Length_Err");
        Length_Err.style.display = 'inline';
        backgroundColor = 'linen';
        alert("Search length must be be between 4 and 17");
        return false;
    } else {
        return true;
    }
}

我无法检查字段长度是否对此有任何想法? 该代码将对空白字段进行检查。

1 个答案:

答案 0 :(得分:1)

返回值将停止执行功能。

@Calvin Nunes评论

  

使用return时,由于您执行以下操作,因此停止执行函数   返回了一个值,因此该函数终止了...这就是为什么   如果永远不会达到第二个,因为在第一个中,如果您返回或为true   或错误

function CheckForm_1() {
  var F1 = document.getElementById('srch');
  var errorMessage = document.getElementById("errorMessage");
  if (F1.value == "") {
    errorMessage.style.display = 'inline';
    errorMessage.style.backgroundColor = 'linen';
    errorMessage.innerHTML= "Search field is empty";
  } else if (F1.value.length > 17 || F1.value.length < 4) {
    errorMessage.style.display = 'inline';
    errorMessage.style.backgroundColor = 'linen';
    errorMessage.innerHTML = 'Search length must be be between 4 and 17';
  } else {
    errorMessage.style.display = 'none';
  }
}
<input id='srch' type="text" />
<div id="errorMessage" style="display:none">Search field is empty</div><br>
<button type="button" onclick="CheckForm_1()">Submit</button>