一行Javascript导致文件的其余部分无法运行
我有一个Javascript文件,用于检查表单的输入。但是,当我取消注释注释行时,javascript文件无法正常工作,即使某些字段为空,也会提交表单。事实上,Javascript文件甚至没有进入第二个警报函数。发生了什么事一行Javascript导致文件的其余部分无法运行,javascript,Javascript,我有一个Javascript文件,用于检查表单的输入。但是,当我取消注释注释行时,javascript文件无法正常工作,即使某些字段为空,也会提交表单。事实上,Javascript文件甚至没有进入第二个警报函数。发生了什么事 function checkLogin() { alert("HERE"); //document.getElementById("errors").style.display = "none"; var form = document.getEle
function checkLogin()
{
alert("HERE");
//document.getElementById("errors").style.display = "none";
var form = document.getElementById("form1");
var problems = false;
document.getElementById("errorJS").style.display = "none";
document.getElementById("errorJS").innerHTML = "";
alert("test");
if(form.email.value.length < 1)
{
document.getElementById("errorJS").innerHTML += "Please enter your email address. <br />";
problems = true;
document.getElementById("errorJS").style.display = "block";
}
if(form.pword.value.length < 1)
{
document.getElementById("errorJS").innerHTML += "Please enter your password.";
problems = true;
document.getElementById("errorJS").style.display = "block";
}
alert(!(problems));
return !(problems);
}
函数checkLogin()
{
警报(“此处”);
//document.getElementById(“错误”).style.display=“无”;
var form=document.getElementById(“form1”);
var问题=错误;
document.getElementById(“errorJS”).style.display=“无”;
document.getElementById(“errorJS”).innerHTML=“”;
警报(“测试”);
如果(form.email.value.length<1)
{
document.getElementById(“errorJS”).innerHTML+=“请输入您的电子邮件地址。
”;
问题=正确;
document.getElementById(“errorJS”).style.display=“block”;
}
if(form.pword.value.length<1)
{
document.getElementById(“errorJS”).innerHTML+=“请输入密码。”;
问题=正确;
document.getElementById(“errorJS”).style.display=“block”;
}
警惕(!(问题));
返回!(问题);
}
就是这样,该行返回null。谢谢您的回答。虽然您没有准确定义“无法正常工作”的含义,并且您没有提供错误信息(浏览器肯定会提供给您),但我想说
document.getElementById(“错误”)
返回空值。这意味着您的文档中不存在ID为errors
的元素
在尝试访问document.getElementById(“errors”)上的属性之前,检查
是否返回了可用的内容将是一个很好的进步。确保您的文档与您假设的一样将是另一个问题。尽管您没有准确定义“无法正常运行”的含义,并且您没有提供错误信息(浏览器肯定会提供给您),但我认为document.getElementById(“错误”)
返回空值。这意味着您的文档中不存在ID为errors
的元素
在尝试访问document.getElementById(“errors”)
上的属性之前,检查是否返回了可用的内容将是一个很好的进步。确保您的文档与您假设的一样将是另一个问题。简而言之:它在某个地方抛出了一个错误(假定在注释外的行中),该错误会停止脚本的执行(不会发出警报,也不会停止提交)
此错误似乎是由于document.getElementById(“errors”)
返回null
,在尝试访问它的style
属性时抛出错误。你应该抓住这种情况:
var errors = document.getElementById("errors");
if (errors)
errors.style.display = "none";
简短:它在某个地方抛出了一个错误(应该在outcommented行中),该错误会停止脚本的执行(不发出警报,不停止提交)
此错误似乎是由于document.getElementById(“errors”)
返回null
,在尝试访问它的style
属性时抛出错误。你应该抓住这种情况:
var errors = document.getElementById("errors");
if (errors)
errors.style.display = "none";
是否存在错误
?所有其他的都是errorJS
您应该在该行看到一个javascript错误,可能是因为元素不存在。这就是javascript的工作原理。。。修复错误,其余代码将执行。错误
是否存在?所有其他的都是errorJS
您应该在该行看到一个javascript错误,可能是因为元素不存在。这就是javascript的工作原理。。。修复错误,其余代码将执行。在注释行之后,函数返回true,而不是继续执行所有行,如果其中一个字段留空,则返回false。如果注释行未注释,则返回true,它停止,浏览器继续执行默认操作。@user532493:你怎么说它返回true?在注释行之后,函数返回true,而不是在其中一个字段留空的情况下继续执行这些行并返回false。这是因为注释行未注释。函数不返回true,它停止,浏览器继续执行默认操作。@user532493:你怎么能说它返回true?