Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 联系人表单中的错误消息_Javascript_Html_Forms_Validation - Fatal编程技术网

Javascript 联系人表单中的错误消息

Javascript 联系人表单中的错误消息,javascript,html,forms,validation,Javascript,Html,Forms,Validation,我已经创建了一个联系人(4个输入文本)表单,我希望如果用户没有在任何输入文本中输入文本,则在每个输入上方都会显示一条文本消息 联系人: 我的问题是,例如,如果用户没有填写自己的姓名(文本字段下方显示错误消息),但如果用户在文本中显示自己的姓名,则仍然会显示错误消息。我如何解决这个问题 这里有一个示例:在keyup事件上,让我们尝试重置错误消息 document.form.name.addEventListener("keyup", function(){ document.getElem

我已经创建了一个联系人(4个输入文本)表单,我希望如果用户没有在任何输入文本中输入文本,则在每个输入上方都会显示一条文本消息

联系人:

我的问题是,例如,如果用户没有填写自己的姓名(文本字段下方显示错误消息),但如果用户在文本中显示自己的姓名,则仍然会显示错误消息。我如何解决这个问题


这里有一个示例:

在keyup事件上,让我们尝试重置错误消息

document.form.name.addEventListener("keyup", function(){
    document.getElementById('error1').innerHTML = '';
});

在keyup事件上,允许尝试重置错误消息

document.form.name.addEventListener("keyup", function(){
    document.getElementById('error1').innerHTML = '';
});

我建议您在验证开始时再次清除错误消息:

function validation(){
    document.getElementById('error1').innerHTML=""
    document.getElementById('error2').innerHTML=""
    document.getElementById('error3').innerHTML=""
    document.getElementById('error4').innerHTML=""

    //Your validation code below:
    ...

}
这样,每当输入验证时,所有错误消息都将被清除并再次计算

您可能想考虑将标签存储在字段的函数的开始处,以便以后可以方便地访问它们。这也有助于提高可读性。例如:

function validation(){
var errorMessage1 = document.getElementById('error1');

//Access the label using your new variable:
errorMessage1.innerHTML = "Your value here"
...

我建议您在验证开始时再次清除错误消息:

function validation(){
    document.getElementById('error1').innerHTML=""
    document.getElementById('error2').innerHTML=""
    document.getElementById('error3').innerHTML=""
    document.getElementById('error4').innerHTML=""

    //Your validation code below:
    ...

}
这样,每当输入验证时,所有错误消息都将被清除并再次计算

您可能想考虑将标签存储在字段的函数的开始处,以便以后可以方便地访问它们。这也有助于提高可读性。例如:

function validation(){
var errorMessage1 = document.getElementById('error1');

//Access the label using your new variable:
errorMessage1.innerHTML = "Your value here"
...

考虑验证所期望的行为。当您键入时,DeNESE的回答将清除所有消息,而当用户尝试再次提交表单时,MIX会清除它们。请考虑您希望从验证中得到的行为。dinesh的回答将在您键入时清除所有消息,而我的回答将在用户再次尝试提交表单时清除这些消息。