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;
}
}
我无法检查字段长度对此有什么想法吗?该代码将对空字段进行检查。
解决方案
返回值将停止函数的执行。
正如@Calvin Nunes 评论的那样
当你使用 return 时,你会停止函数执行,因为你返回了一个值,所以函数被终止......这就是为什么你永远不会到达第二个 if,因为在第一个 if 你 return 或 true 或 false
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>
推荐阅读
- c++ - 无法为 SLES15 SP3 上的驱动程序编译源代码
- firefox - 特定于扩展的 sessionStorage
- java - 在显示列表之前等待数据库信息
- javascript - 如何以功能性 javascript 样式处理副作用
- pandas - 分为三类 Pandas Dataframe
- java - 我们可以验证不完整的 DTO 属性吗?
- react-hooks - 无法访问使用的状态
在我的代码中,我有一个像这样
const [files, setFiles] = React.useState<IDocumentInfo[]>([]);
钩子创建的状态数组,然后在网格中<AgGridReact rowData={files} columnDefs={colDefs} ....
其中一列名为“
- azure - Rest API 数据工厂的分页错误无效令牌
- python - So I'm making a program that repeats a greeting to the user as many times they want, but when they want to continue it doesnt show that code
- c++ - 模拟 kCGEventOtherMouseDown 仅适用于右键单击