Display Error Message on HTML form using Javascript

Hi Experts,

I copied the sample code below from a related question the knowledgebase....

Is there any way, I can get the error message from the javascript to display in the html form itself, below the first name, last name and phone number? If so, can you provide the modified logic to the sample below?

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript"><!--
function validate(f)
{
	var err={};
	
	if( f.fname.value=="")
	{
		err.message="Missing First Name";
		err.field=f.fname;
	}
	else if( f.lname.value=="")
	{
		err.message="Missing Last Name";
		err.field=f.lname;
		
	}
	else if( f.phone.value=="")
	{
		err.message="Missing Phone Number";
		err.field=f.phone;
	}
	if(err.message)
	{
		alert(err.message);
		err.field.focus();
		return false;
	}
return true;
}
//--></script>
</head>
<body>
<form action="https://www.someserver.com/file?encoding=UTF-8" method="POST" onsubmit="return validate(this);">
    <input id="fname" name="fname" type="text" value="" />
    <input id="lname" name="lname" type="text" value="" />
    <input id="phone" name="phone" type="text" value="" />
    <input id="submit" name="Submit" type="submit" value="Submit" />
</form> 
</body>
</html>

Open in new window

bluegreen288Asked:
Who is Participating?
 
LordOfPortsConnect With a Mentor Commented:
Yes, simply add e.g. a DIV below the form and assign to it the error message:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript"><!--
function validate(f)
{
        var err={};
        
        if( f.fname.value=="")
        {
                err.message="Missing First Name";
                err.field=f.fname;
        }
        else if( f.lname.value=="")
        {
                err.message="Missing Last Name";
                err.field=f.lname;
                
        }
        else if( f.phone.value=="")
        {
                err.message="Missing Phone Number";
                err.field=f.phone;
        }
        if(err.message)
        {
                document.getElementById('divError').innerHTML = err.message;
                err.field.focus();
                return false;
        }
return true;
}
//--></script>
</head>
<body>
<form action="https://www.someserver.com/file?encoding=UTF-8" method="POST" onsubmit="return validate(this);">
    <input id="fname" name="fname" type="text" value="" />
    <input id="lname" name="lname" type="text" value="" />
    <input id="phone" name="phone" type="text" value="" />
    <input id="submit" name="Submit" type="submit" value="Submit" />
</form>
<div id="divError"></div>
</body>
</html>

Open in new window

0
 
HonorGodConnect With a Mentor Commented:
And choose a CSS class name that makes the messages stand out.
0
 
HonorGodCommented:
Thanks for the assist and the points.

Good luck & have a great day
0
All Courses

From novice to tech pro — start learning today.