Javascript 功能赢得';t运行代码的第二部分如何修复?
这是我的密码Javascript 功能赢得';t运行代码的第二部分如何修复?,javascript,Javascript,这是我的密码 函数检查表_1(){ var F1=document.getElementById('srch'); var Lgth=document.getElementById('srch'); 如果(F1.value==“”){ document.getElementById(“Empty_Err”); 空_Err.style.display='inline'; 空_Err.stylebackgroundColor='linen'; 返回false; }否则{ 返回true; } 如果(
函数检查表_1(){
var F1=document.getElementById('srch');
var Lgth=document.getElementById('srch');
如果(F1.value==“”){
document.getElementById(“Empty_Err”);
空_Err.style.display='inline';
空_Err.stylebackgroundColor='linen';
返回false;
}否则{
返回true;
}
如果(Lgth.value.length>17 | | Lgth.value.length<4){
document.getElementById(“长度错误”);
Length_Err.style.display='inline';
背景颜色=‘亚麻布’;
警报(“搜索长度必须介于4和17之间”);
返回false;
}否则{
返回true;
}
}
返回值将停止函数的执行
正如@Calvin Nunes所评论的
使用return时,由于
返回一个值,因此函数被终止…这就是为什么
永远不要到达第二个if,因为在第一个if中你返回或为true
还是假的
函数检查表_1(){
var F1=document.getElementById('srch');
var errorMessage=document.getElementById(“errorMessage”);
如果(F1.value==“”){
errorMessage.style.display='inline';
errorMessage.style.backgroundColor='linen';
errorMessage.innerHTML=“搜索字段为空”;
}否则如果(F1.value.length>17 | | F1.value.length<4){
errorMessage.style.display='inline';
errorMessage.style.backgroundColor='linen';
errorMessage.innerHTML='搜索长度必须介于4和17'之间;
}否则{
errorMessage.style.display='none';
}
}
搜索字段为空
提交
document.getElementById('srch')为什么要进行2次赋值代码>?您不需要对2个变量重复此操作。当您使用return
时,您停止函数执行,因为您返回了一个值,因此函数被终止……这就是为什么如果,您将永远无法到达第二个,因为在第一个if
中,您返回或true或false…您从两个if
分支(F1.value empty或not)返回,您期望得到什么?我仍在学习javascript。@bobronald删除第一个else
,在那里您返回true。另外,修复Empty\u Err.stylebackgroundColor
Hey@Pete中的打字错误,添加了一些解释。谢谢提醒。