Why won't the onmouseover command work?

When the user scrolls over the text boxes, it should display a message from the indirectly embedded javascript page.  Is there an error in this code somewhere, because when I scroll over the text boxes, nothing happens.
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
  "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<!--dynValueContactForm.html
	Uses dynValueContactForm.js
	Illustrates dynamic values
	-->
<html xmlns="http://www.w3.org/1999/xhtml">
   <head>
      <title> Contact Form </title>
      <link rel = "stylesheet" type = "text/css" href = "team3styles.css" />
      <script type = "text/javascript" src = "dynValueContactForm.js" >
      </script>

   </head>
   <body>
      <h3> Customer Information </h3>
      <form action = "">
        <p>
           <label>Name (last name, first name, middle initial)
	   	   <input type = "text" onmouseover = "messages(0)"
	  		onmouseout = "messages(2)" />
	  	   </label> <br />
		   <label class = "required"> (required) </label>
	       <br /> <br />

	       <label>Email Address (yourname@wherever.com)
	       <input type = "text" onmouseover = "messages(1)"
	  		onmouseout = "messages(2)" />
	  		</label> <br />
	       <label class = "required"> (required) </label>
	       <br /> <br />
	<label> Your message: </label> <br />
		<textarea name = "custMessage" rows = "6" cols = "60">
		</textarea>
	  	<br /><br />
	<textarea id = "adviceBox"  rows = "3" cols = "50">This box provides advice on filling out the form on this page.  Put the mouse cursor over any input field to get advice.
   	</textarea>
   	   </p>
   	<p class = "regText">
   	 	Go ahead...
   	<a style = "color: blue;"
   		onmouseover="this.style.color = 'red';
   					 this.style.font = 'italic 16pt Times';"
   		onmouseout="this.style.color = 'blue';
   					this.style.font = 'normal 16pt Times';">
   		try it!
	</a><br /><br /><br />

	       <input type = "reset" id = "reset" />

	       <input type = "submit" id = "submit" /><br /><br />

	<br /><a href = "Team_3_Home_Page.html"> Return to Home </a>
   	</p>
   	</form>
    </body>
</html>

Open in new window

mkelly2384Asked:
Who is Participating?
 
Jini JoseConnect With a Mentor Senior .Net DeveloperCommented:
when i changed the variable value to one single line var helpers = ["Your name must be in the form: \n \ first name, middle initial., last name",  "Your email address must have the form: \  user@domain",  "This box provides advice on filling out\  the form on this page. Put the mouse cursor over any \   input field to get advice"]

and put a semicolum at the end.

it is working perfectly.

0
 
mkelly2384Author Commented:
Here is the .js file that goes with it...
// dynValueContactForm.js
// Illustrates dynamic values

var helpers = ["Your name must be in the form: \n \
 first name, middle initial., last name",
  "Your email address must have the form: \
  user@domain",
  "This box provides advice on filling out\
  the form on this page. Put the mouse cursor over any \ 
  input field to get advice"]

// *********************************************************** 
// The event handler function to change the value of the 
// textarea
  
function messages(adviceNumber) {
 	document.getElementById("adviceBox").value = helpers[adviceNumber];
}

Open in new window

0
 
ajisasaggiCommented:
The escape characters at the end of the messages are causing the problem (not sure why though).
You can either remove them or replace with the string concatenation operator.
0
Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
Jini JoseSenior .Net DeveloperCommented:
the problem i found is the messages array is not declared.
0
 
SnarflesConnect With a Mentor Commented:
Try this

var helpers = ["Your name must be in the form: \n first name, middle initial., last name",
  "Your email address must have the form: user@domain",
  "This box provides advice on filling out the form on this page. Put the mouse cursor over any input field to get advice"];

see http://snarfles.net/code/mouseover.html to see it working.

Cheers

Luke
0
 
ajisasaggiConnect With a Mentor Commented:
Found the problem.
There is an extra blank space after the escape character at line 9 in the JS file. Just remove that.

By the way, there is an easy way to validate JS files in Windows. Just double click the file and error messages, if any, will be displayed.
0
 
Jini JoseSenior .Net DeveloperCommented:
if you are using firefox, then it is easy to find the javascript errors. just click the tools--> error console. it will display the page errors.

0
 
Easwaran ParamasivamCommented:
Please do ensure the path specified of dynValueContactForm.js in <script type = "text/javascript" src = "dynValueContactForm.js" > is correct and the file existance.
0
 
mkelly2384Author Commented:
Thanks everybody.  It's working great!
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.