473,509 Members | 2,951 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

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 4863

"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
2656
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 very basic validation. Therefore, I only had one...
8
3623
by: chrisdude911 | last post by:
how do i add video into a javascript web page with my own custom buttons?
0
7237
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
7137
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
7347
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
7506
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
5656
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
1
5062
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...
0
3207
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
0
1571
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated ...
1
779
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

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.