javascript - 如何使用 JavaScript 在同一页面上显示多个错误消息

标签 javascript

我正在研究 Java 脚本,但我被困在一个阶段。在我的项目中,我必须在提交表单时验证所有字段,并在同一页面上按表单字段上方的顺序列表显示错误消息。下面是我的代码

function validation(){
    var errorMsg=new Array(); 
    //var errorMsg = "";
    if(document.getElementById("fullname").value = " "){
        errorMsg[0] = "Please Enter Full Name\n"
}
if(document.getElementById("street").value = " "){
        errorMsg[1]= "Please Enter Street Name\n"
}
if(document.getElementById("postcode").value = " "){
        errorMsg[2]= "Please Enter Postlecode\n"
}
if(document.getElementById("phone").value = " "){
        errorMsg[3]= "Please Enter Phone Number\n"
}
if(document.getElementById("email").value = " "){
        errorMsg[4]= "Please Enter Email Id\n"
}
if(errorMsg!=" "){
    var r =" ";
    for(var i=0;i<=errorMsg.length-1;i++){
    document.getElementById("error").innerHTML="<li>"+errorMsg[i]+"</li>"
    }   
    return false;
}
}
</script>

当我运行这段代码时,它只给我最后一个值

谁能帮我如何在表单顶部显示错误消息?

最佳答案

你在这里犯了一个错误:

document.getElementById("error").innerHTML="<li>"+errorMsg[i]+"</li>"

您需要附加 errorMsg ,而不是分配它。例如像这样:

document.getElementById("error").innerHTML+="<li>"+errorMsg[i]+"</li>"

如果你想在页面顶部显示错误信息,你应该创建div,在你想要的地方,给这个div id 并设置innerHtml 到这个div:

<div id="AllErrors"></div>

document.getElementById("AllErrors").innerHTML+="<li>"+errorMsg[i]+"</li>"

您还可以在用户输入时改进您的验证和验证字段,而不是在他提交所有信息之后。

顺便说一句,你在标签 <li> 中添加了错误.所以,你知道你还应该添加 <ol><ul>列一个 list ?

关于javascript - 如何使用 JavaScript 在同一页面上显示多个错误消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13717648/

相关文章:

javascript - 通过 module.exports 发送多个函数抛出错误

javascript - 当前选择的选项未正确显示

javascript - 如何在循环内使用 JavaScript 动画效果?

javascript - 移动设备上的表单错误而不是桌面上的

javascript - Angular Bootstrap : data-provide ="datepicker" not using format identifier

javascript - Jquery代码优化(两个不同div的方法attr())?

javascript - 当我长按键盘上的某个键时事件输入错误页面

javascript - Thickbox - 不会在 Chrome 中关闭

javascript - 无法按预期创建塔

javascript - anchor 标签在页面下方起作用,但不向上