472,352 Members | 1,522 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 472,352 software developers and data experts.

JavaScript Form Validation Doesn't Work In Netscape

My JavaScript Form Validation doesn't work at all in Netscape, but it
works fine in IE.

I made some of the suggested changes which enabled it to work in IE.
I couldn't make all the changes because then it didn't work in IE.

How can I enable this javascipt form validation to work in Netscape?
When I use netscape, none of the alert boxes appear. It submits the
form without validating anything.

In IE, I get all the alert boxes and everything is validated.

Thanks.

The relevant code is:

<script language="JavaScript" type="text/javascript">
<!--
function validate(theForm)
{
var validity = true; // assume valid
// If user doesn't enter required name, alert them
if(frmComments.name.value == '' && validity == true)
{
alert('Your full name is required.\nPlease enter your full
name!');
validity = false;
frmComments.name.focus();
return false;
}
// If user doesn't enter required company, alert them
if(frmComments.company.value == '' && validity == true)
{
alert('Your company name is required.\n' +
'Please enter the name of your company!');
validity = false;
frmComments.company.focus();
return false;
}
// If user doesn't enter the correct email format alert them
// Email is not required
var pattern1 = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/;
if (!pattern1.test(frmComments.email.value) && validity == true)
{
alert('Invalid E-mail Address!\n' +
'Please re-enter.')
frmComments.email.focus();
validity = false;
return false;
}
// If user doesn't enter the correct zip code format alert them
// Zip Code is not required
if(!frmComments.zip.value == '' )
{
var pattern2 = /^\d{5}$/ ;
if(!pattern2.test(frmComments.zip.value))
{
if(!pattern2.test(frmComments.zip.value) && validity ==
true)
{
alert('Invalid Zip Code!\nMust be in form 12345.\n' +
'Please re-enter.');* * * *
frmComments.zip.focus();
validity = false;
return false;
}
}
}
// If user doesn't enter the correct phone number format alert
them
// Phone Number is not required
if(!frmComments.phone.value == '')
{
var pattern3 = /\d{3}\-\d{3}\-\d{4}/;
if(!pattern3.test(frmComments.phone.value))
{
if(!pattern3.test(frmComments.phone.value)&& validity ==
true)
{
alert('Invalid Phone Number!\nMust be in form
555-555-5555.\n' +
'Please re-enter.');* * * *
frmComments.phone.focus();
validity = false;
return false;
}
}
// If data entered is valid, confirm submission
if(validity == true)
return formSubmit();
}

// Confirm submission
function formSubmit()
{
return ( confirm('Are you sure you want to submit?'));
frmComments.name.focus();
}

// Confirm clearing of fields
function formReset()
{
return ( confirm( "Are you sure you want to reset?" ) )
frmComments.name.focus();
}
// -->
</script>

<form id="frmComments"
action="http://matrix.csis.pace.edu/~f03-it604-s03/cgi-bin/comments.pl"
method="post" onSubmit="return validate(this);" onReset="return
formReset(this)">

<input type="submit" align="right" value="Submit" name="submit"
onchange="frmComments.name.focus();"
onblur="frmComments.name.focus();">
<input type="reset" align="right" value="Clear" name="reset">

The link to this page is:
http://matrix.csis.pace.edu/~f03-it6.../comments.html
Jul 20 '05 #1
7 4771

"AnnMarie" <ca*****@optonline.net> schreef in bericht
news:c6**************************@posting.google.c om...

How can I enable this javascipt form validation to work in Netscape?
When I use netscape, none of the alert boxes appear. It submits the
form without validating anything.

In IE, I get all the alert boxes and everything is validated.

IE will accept formName.property, while Netscape expects
document.formName.property.

The relevant code is: ..... function validate(theForm)
{
var validity = true; // assume valid
// If user doesn't enter required name, alert them
if(frmComments.name.value == '' && validity == true)
{


Replace frmComments with theForm, e.g.:
if (theForm.name.value == '')

But since name is a reserved property within the Form object, it's saver to
use the following syntax:
if (theForm.elements['name'].value == '')
JW

Jul 20 '05 #2
"Janwillem Borleffs" <jw@jwscripts.com> writes:
IE will accept formName.property, while Netscape expects
document.formName.property.


And the W3C DOM specification expects
document.forms.formName
or
document.forms['formName']
I prefer the second. It works, even if the formName contains special
characters.

/L
--
Lasse Reichstein Nielsen - lr*@hotpop.com
DHTML Death Colors: <URL:http://www.infimum.dk/HTML/rasterTriangleDOM.html>
'Faith without judgement merely degrades the spirit divine.'
Jul 20 '05 #3
Thanks for your help. I made the suggested changes and it now also
works in Netscape. I also had to change the form attribute in the form
tag from id to name. But, name doesn't validate with W3C validator and
validation is a requirement for my project.

How can I make an html page with a form validate and work in IE and
netscape?

Thanks.

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!
Jul 20 '05 #4
AnnMarie Caruso <ca*****@optonline.net> writes:
Thanks for your help. I made the suggested changes and it now also
works in Netscape.
Which Netscape? I guess Netscape 4, since Netscape 6+ will definitly
work with id.
I also had to change the form attribute in the form
tag from id to name.
The id attribute is the recommended one.
But, name doesn't validate with W3C validator and
validation is a requirement for my project.


Then you have to change to a DOCTYPE that accepts both, e.g., HTML
4.01 Transitional. Then add both "id" and "name" attributes to the
form tag, with identical values.

/L
--
Lasse Reichstein Nielsen - lr*@hotpop.com
DHTML Death Colors: <URL:http://www.infimum.dk/HTML/rasterTriangleDOM.html>
'Faith without judgement merely degrades the spirit divine.'
Jul 20 '05 #5
Thanks again. It worked. I am using Netscape 7.02. I changed the
DOCTYPE from 4.0 to 4.01 and used both id and name and it validates and
works in both netscape and IE.

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!
Jul 20 '05 #6

"Janwillem Borleffs" <jw@jwscripts.com> wrote in message
news:3f*********************@news.wanadoo.nl...

"AnnMarie" <ca*****@optonline.net> schreef in bericht
news:c6**************************@posting.google.c om...

How can I enable this javascipt form validation to work in Netscape?
When I use netscape, none of the alert boxes appear. It submits the
form without validating anything.

In IE, I get all the alert boxes and everything is validated.

IE will accept formName.property, while Netscape expects
document.formName.property.

The relevant code is:

....
function validate(theForm)
{
var validity = true; // assume valid
// If user doesn't enter required name, alert them
if(frmComments.name.value == '' && validity == true)
{


Replace frmComments with theForm, e.g.:
if (theForm.name.value == '')

But since name is a reserved property within the Form object, it's saver

to use the following syntax:
if (theForm.elements['name'].value == '')
JW


I'm a newbie with js but had a look at the original post and wondered if you
folks were refering to the fact that the <FORM> tag did not contain a NAME
attribute... It should, true?

randelld
Jul 20 '05 #7
The form tag should contain the name attriubute. The problem I had was
that it didn't validate with W3C validator. So I changed the DOCTYPE to
4.01 and included the name and id attribute and then it validated. I
hope this helps.

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!
Jul 20 '05 #8

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

5
by: Sue | last post by:
After finishing up my first quarter JavaScript on 12/12/03, I decided to improve character checking on my project. In my project I only had to do...
8
by: chrisdude911 | last post by:
how do i add video into a javascript web page with my own custom buttons?
0
better678
by: better678 | last post by:
Question: Discuss your understanding of the Java platform. Is the statement "Java is interpreted" correct? Answer: Java is an object-oriented...
0
by: Naresh1 | last post by:
What is WebLogic Admin Training? WebLogic Admin Training is a specialized program designed to equip individuals with the skills and knowledge...
0
by: Matthew3360 | last post by:
Hi there. I have been struggling to find out how to use a variable as my location in my header redirect function. Here is my code. ...
0
by: AndyPSV | last post by:
HOW CAN I CREATE AN AI with an .executable file that would suck all files in the folder and on my computerHOW CAN I CREATE AN AI with an .executable...
0
by: Arjunsri | last post by:
I have a Redshift database that I need to use as an import data source. I have configured the DSN connection using the server, port, database, and...
0
hi
by: WisdomUfot | last post by:
It's an interesting question you've got about how Gmail hides the HTTP referrer when a link in an email is clicked. While I don't have the specific...
0
by: Matthew3360 | last post by:
Hi, I have been trying to connect to a local host using php curl. But I am finding it hard to do this. I am doing the curl get request from my web...
0
Oralloy
by: Oralloy | last post by:
Hello Folks, I am trying to hook up a CPU which I designed using SystemC to I/O pins on an FPGA. My problem (spelled failure) is with the...
0
by: Carina712 | last post by:
Setting background colors for Excel documents can help to improve the visual appeal of the document and make it easier to read and understand....

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.