Javascript 为空的innerhtml元素设置隐藏显示

Javascript 为空的innerhtml元素设置隐藏显示,javascript,Javascript,我有一张表格,上面有一个没有空格的名字和一个电话号码 我设法使表单和错误消息正常工作,但当表单中没有消息时,我找不到隐藏错误的方法。它可以隐藏其他后续错误消息,但不是第一条,我通过Chrome的调试工具发现了这一点 我试着遍历所有元素以找到一个空白的innerHTML并隐藏错误样式,但它不起作用,无法找到它 有办法吗?代码如下: window.onload=函数(){ 让form=document.getElementById(“formDetails”); 表单。addEventListen

我有一张表格,上面有一个没有空格的名字和一个电话号码

我设法使表单和错误消息正常工作,但当表单中没有消息时,我找不到隐藏错误的方法。它可以隐藏其他后续错误消息,但不是第一条,我通过Chrome的调试工具发现了这一点

我试着遍历所有元素以找到一个空白的innerHTML并隐藏错误样式,但它不起作用,无法找到它

有办法吗?代码如下:

window.onload=函数(){
让form=document.getElementById(“formDetails”);
表单。addEventListener(“提交”,函数(事件){
设haltSubmission=false;
cleanPhoneError();
cleannamererror();
for(设i=0;i
标签、按钮{ 显示:块; 利润率:10px0.5px0; } 输入,按钮{ 填充:8px; 宽度:393px; 字体大小:16px; } 钮扣{ 字体系列:Arial,无衬线; } .错误{ 颜色:#FFF; 显示:块; 利润率:0.15px0; 背景:99万; 填充物:5px 3px 5px 5px; 宽度:405px; 线高:25px; }

JavaScript
形式
*姓名:
*电话号码
*重新键入电话号码:
提交
您需要修改函数
errorMessage(…)
以仅在出现错误消息时追加元素

一个简单的“如果”语句可能就足够满足您的需要了。
更新

根据评论,我重新编写了隐藏/显示错误逻辑,请看一看。我认为这也有点可读性

见下面的演示

函数cleanPhoneError(){
隐藏元素(“电话错误”);
}
函数hideElement(elementName){
让elementObj=document.getElementById(elementName);
if(elementObj){
elementObj.innerHTML=“”;
elementObj.setAttribute(“类”、“隐藏”);
}
}
window.onload=function(){
让form=document.getElementById(“formDetails”);
表单。addEventListener(“提交”,函数(事件){
设haltSubmission=false;
清除错误();
如果(!validName()){
haltSubmission=true;
}
如果(!validPhone()){
haltSubmission=true;
}
if(haltSubmission===true){
event.preventDefault();
}
},假);
}
函数cleanErrors(){
cleanPhoneError();
cleannamererror();
}
函数validName(){
让nameObj=document.getElementById(“名称”);
如果(