strMsg += "\nFirst Name (or initial) is required" ;
strMsg += "\nLast Name is required" ;
strMsg += "\nZip/Postal Code is required" ;
strMsg += "\nZip/Postal Code needs 5+ digits" ;
strMsg += "\nCountry choice is required" ;
strMsg += "\nGender choice is required" ;
strMsg += "\nBirth (YYYY) is required" ;
strMsg2 += "\nBirth (YYYY) must be between 1900 and " + theNowYear ;
strMsg2 += "\n You need to select your Birth (YYYY) Value" ;
strMsg += "\nBirth (MM) is required" ;
strMsg2 += "\nBirth (MM) must be between 1 and 12" ;
strMsg += "\nEmail Address is required" ;
strMsg2 += "\nEmail Address (not valid)" ;
return true ;
}
Finally, here is the Javascript for validating the email address.
function isValidEmail(emailAddress) {
var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/ ;
return re.test(emailAddress) ;
}
Things to note:
In the <form> tag, the "name" is "f_profile" -- which is something that you see quite a bit in the Javascript validation.
Also in the <form> tag, there is an onsubmit="return validate_profile(this);" which is actually what causes the validation to happen locally, on the client browser.
Javascript needs to be included on the web page, either as text OR as a linked in page like this: <script language="javascript" type="text/javascript" src="./xyz_javascrip.js"></script>
Hope this helps someone else.
Disclaimer: Must of this "code" was taken from other web pages and/or some javascript source code libraries offered on the web.
Deletions: theNowYear = 1900 ;
strMsg = "\nFirst Name (or initial) is required" ;
strMsg = "\nLast Name is required" ;
strMsg = "\nZip/Postal Code is required" ;
strMsg = "\nZip/Postal Code needs 5 digits" ;
strMsg = "\nCountry choice is required" ;
strMsg = "\nGender choice is required" ;
strMsg = "\nBirth (YYYY) is required" ;
strMsg2 = "\nBirth (YYYY) must be between 1900 and " theNowYear ;
strMsg2 = "\n You need to select your Birth (YYYY) Value" ;
strMsg = "\nBirth (MM) is required" ;
strMsg2 = "\nBirth (MM) must be between 1 and 12" ;
strMsg = "\nEmail Address is required" ;
strMsg2 = "\nEmail Address (not valid)" ;
strMsg = "\nFirst Name (or initial) is required" ;
strMsg = "\nLast Name is required" ;
strMsg = "\nZip/Postal Code is required" ;
strMsg = "\nZip/Postal Code needs 5 digits" ;
strMsg = "\nCountry choice is required" ;
strMsg = "\nGender choice is required" ;
strMsg = "\nBirth (YYYY) is required" ;
strMsg2 = "\nBirth (YYYY) must be between 1900 and " theNowYear ;
strMsg2 = "\n You need to select your Birth (YYYY) Value" ;
strMsg = "\nBirth (MM) is required" ;
strMsg2 = "\nBirth (MM) must be between 1 and 12" ;
strMsg = "\nEmail Address is required" ;
strMsg2 = "\nEmail Address (not valid)" ;
if (intYear != theNowYear - 1
Deletions: theNowYear += 1900 ;
strMsg += "\nFirst Name (or initial) is required" ;
strMsg += "\nLast Name is required" ;
strMsg += "\nZip/Postal Code is required" ;
strMsg += "\nZip/Postal Code needs 5+ digits" ;
strMsg += "\nCountry choice is required" ;
strMsg += "\nGender choice is required" ;
strMsg += "\nBirth (YYYY) is required" ;
strMsg2 += "\nBirth (YYYY) must be between 1900 and " + theNowYear ;
strMsg2 += "\n You need to select your Birth (YYYY) Value" ;
strMsg += "\nBirth (MM) is required" ;
strMsg2 += "\nBirth (MM) must be between 1 and 12" ;
strMsg += "\nEmail Address is required" ;
strMsg2 += "\nEmail Address (not valid)" ;
return true ;
}
Finally, here is the Javascript for validating the email address.
function isValidEmail(emailAddress) {
var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/ ;
return re.test(emailAddress) ;
}
Things to note:
In the <form> tag, the "name" is "f_profile" -- which is something that you see quite a bit in the Javascript validation.
Also in the <form> tag, there is an onsubmit="return validate_profile(this);" which is actually what causes the validation to happen locally, on the client browser.
Javascript needs to be included on the web page, either as text OR as a linked in page like this: <script language="javascript" type="text/javascript" src="./xyz_javascrip.js"></script>
Hope this helps someone else.
Disclaimer: Must of this "code" was taken from other web pages and/or some javascript source code libraries offered on the web.
Additions: <td valign="top"> </td>
<input type="text" name="fn_up_addr1" value="6050 Peachtree Pkwy, #240-200" size="30" maxlength="40" />
<td valign="top">Address 2</td>
<td valign="top"> </td>
<input type="text" name="fn_up_addr2" value= size="30" maxlength="40" />
Address 3
size="30" maxlength="40" />
<td valign="top">City</td>
<td valign="top"> </td>
<input type="text" name="fn_up_city" value="Norcross" size="30" maxlength="25" />
<td valign="top">State</td>
<td valign="top"> </td>
<select name="fn_up_state">
<option value = -->- Choose -</option>
<option value = AL>Alabama</option>
<option value = AK>Alaska</option>
<option value = AZ>Arizona</option>
<option value = AR>Arkansas</option>
<option value = CA>California</option>
<option value = CO>Colorado</option>
<option value = CT>Connecticut</option>
<option value = DE>Delaware</option>
<option value = FL>Florida</option>
<option value = GA selected>Georgia</option>
<option value = HI>Hawaii</option>
<option value = ID>Idaho</option>
<option value = IL>Illinois</option>
<option value = IN>Indiana</option>
<option value = IA>Iowa</option>
<option value = KS>Kansas</option>
<option value = KY>Kentucky</option>
<option value = LA>Louisiana</option>
<option value = ME>Maine</option>
<option value = MD>Maryland</option>
<option value = MA>Massachusetts</option>
<option value = MI>Michigan</option>
<option value = MN>Minnesota</option>
<option value = MS>Mississippi</option>
<option value = MO>Missouri</option>
<option value = MT>Montana</option>
<option value = NE>Nebraska</option>
<option value = NV>Nevada</option>
<option value = NH>New Hampshire</option>
<option value = NJ>New Jersey</option>
<option value = NM>New Mexico</option>
<option value = NY>New York</option>
<option value = NC>North Carolina</option>
<option value = ND>North Dakota</option>
<option value = OH>Ohio</option>
<option value = OK>Oklahoma</option>
<option value = OR>Oregon</option>
<option value = PA>Pennsylvania</option>
<option value = RI>Rhode Island</option>
<option value = SC>South Carolina</option>
<option value = SD>South Dakota</option>
<option value = TN>Tennessee</option>
<option value = TX>Texas</option>
<option value = UT>Utah</option>
<option value = VT>Vermont</option>
<option value = VA>Virginia</option>
<option value = WA>Washington</option>
<option value = DC>Washington D.C.</option>
<option value = WV>West Virginia</option>
<option value = WI>Wisconsin</option>
<option value = WY>Wyoming</option>
<option value = XX>Not in U.S.</option>
</select>
<td valign="top">Birth (MM)</td>
<select name="fn_up_birthM">
<option value = 1>1</option>
<option value = 2>2</option>
<option value = 3 selected>3</option>
<option value = 4>4</option>
<option value = 5>5</option>
<option value = 6>6</option>
<option value = 7>7</option>
<option value = 8>8</option>
<option value = 9>9</option>
<option value = 10>10</option>
<option value = 11>11</option>
<option value = 12>12</option>
</select>
<td valign="top">E-Mail Address</td>
<input type="text" name="fn_up_email" value="test49@thomasmartin.com" size="30" maxlength="100" />
<input type="hidden" name="currPIN" value="999999999949" />
<input type="hidden" name="currSID" value="200602191339337320978" />
<input type="hidden" name="actpin" value= />
Here is the Javascript to validate that form. PLEASE NOTE that there a few extra fields in the javascript validation which I removed from the form -- because they were just too large to include on this page.
function validate_profile() {
var strMsg = "The following fields need attention: \n" ;
var strMsg2 = ;
var blnShow = false ;
var theNowDate = new Date() ;
var theNowYear = theNowDate.getYear() ;
var theNowMonth = theNowDate.getMonth() ; for netscape 7 and other browsers? ie returns getYear as 4 digits (ie 2004) ns7 returns getYear as from 1900 (ie 104)
if (theNowYear < 1900) {
theNowYear += 1900 ;
}
var strField = ltrim(document.f_profile.fn_up_namefirst.value) ;
if (strField
) {
strMsg += "\nFirst Name (or initial) is required" ;
blnShow = true ;
}
var strField = ltrim(document.f_profile.fn_up_namelast.value) ;
if (strField==) {
strMsg += "\nLast Name is required" ;
blnShow = true ;
}
var strField = ltrim(document.f_profile.fn_up_zipcode.value) ;
if (strField
) {
strMsg += "\nZip/Postal Code is required" ;
blnShow = true ;
}
if (strField.length < 5) {
strMsg += "\nZip/Postal Code needs 5+ digits" ;
blnShow = true ;
}
var strField = ltrim(document.f_profile.fn_up_country.value) ;
if (strField=="--") {
strMsg += "\nCountry choice is required" ;
blnShow = true ;
}
var strField = ltrim(document.f_profile.fn_up_gender.value) ;
if (strField==) {
}
var strField = ltrim(document.f_profile.fn_up_birthY.value) ;
if (strField
) {
// old, for text field
strMsg += "\nBirth (YYYY) is required" ;
blnShow = true ;
}
var intYear = parseInt(strField) ;
if (intYear <= 1900 || intYear >= theNowYear) {
strMsg2 += "\nBirth (YYYY) must be between 1900 and " + theNowYear ;
blnShow = true ;
}
if (intYear == (theNowYear - 1)) {
strMsg2 += "\n You need to select your Birth (YYYY) Value" ;
blnShow = true ;
}
var strField = ltrim(document.f_profile.fn_up_birthM.value) ;
if (strField==) {
}
return true ;
}
Finally, here is the Javascript for validating the email address.
function isValidEmail(emailAddress) {
var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/ ;
return re.test(emailAddress) ;
}
Things to note:
In the <form> tag, the "name" is "f_profile" -- which is something that you see quite a bit in the Javascript validation.
Also in the <form> tag, there is an onsubmit="return validate_profile(this);" which is actually what causes the validation to happen locally, on the client browser.
Javascript needs to be included on the web page, either as text OR as a linked in page like this: <script language="javascript" type="text/javascript" src="./xyz_javascrip.js"></script>
Hope this helps someone else.
Disclaimer: Must of this "code" was taken from other web pages and/or some javascript source code libraries offered on the web.
Deletions: <td valign="top"> </td>
<input type="text" name="fn_up_addr1" value="6050 Peachtree Pkwy, #240-200" size="30" maxlength="40" />
<td valign="top">Address 2</td>
<td valign="top"> </td>
<input type="text" name="fn_up_addr2" value= size="30" maxlength="40" />
Address 3
size="30" maxlength="40" />
<td valign="top">City</td>
<td valign="top"> </td>
<input type="text" name="fn_up_city" value="Norcross" size="30" maxlength="25" />
<td valign="top">State</td>
<td valign="top"> </td>
<select name="fn_up_state">
<option value = -->- Choose -</option>
<option value = AL>Alabama</option>
<option value = AK>Alaska</option>
<option value = AZ>Arizona</option>
<option value = AR>Arkansas</option>
<option value = CA>California</option>
<option value = CO>Colorado</option>
<option value = CT>Connecticut</option>
<option value = DE>Delaware</option>
<option value = FL>Florida</option>
<option value = GA selected>Georgia</option>
<option value = HI>Hawaii</option>
<option value = ID>Idaho</option>
<option value = IL>Illinois</option>
<option value = IN>Indiana</option>
<option value = IA>Iowa</option>
<option value = KS>Kansas</option>
<option value = KY>Kentucky</option>
<option value = LA>Louisiana</option>
<option value = ME>Maine</option>
<option value = MD>Maryland</option>
<option value = MA>Massachusetts</option>
<option value = MI>Michigan</option>
<option value = MN>Minnesota</option>
<option value = MS>Mississippi</option>
<option value = MO>Missouri</option>
<option value = MT>Montana</option>
<option value = NE>Nebraska</option>
<option value = NV>Nevada</option>
<option value = NH>New Hampshire</option>
<option value = NJ>New Jersey</option>
<option value = NM>New Mexico</option>
<option value = NY>New York</option>
<option value = NC>North Carolina</option>
<option value = ND>North Dakota</option>
<option value = OH>Ohio</option>
<option value = OK>Oklahoma</option>
<option value = OR>Oregon</option>
<option value = PA>Pennsylvania</option>
<option value = RI>Rhode Island</option>
<option value = SC>South Carolina</option>
<option value = SD>South Dakota</option>
<option value = TN>Tennessee</option>
<option value = TX>Texas</option>
<option value = UT>Utah</option>
<option value = VT>Vermont</option>
<option value = VA>Virginia</option>
<option value = WA>Washington</option>
<option value = DC>Washington D.C.</option>
<option value = WV>West Virginia</option>
<option value = WI>Wisconsin</option>
<option value = WY>Wyoming</option>
<option value = XX>Not in U.S.</option>
</select>
<td valign="top">Birth (MM)</td>
<select name="fn_up_birthM">
<option value = 1>1</option>
<option value = 2>2</option>
<option value = 3 selected>3</option>
<option value = 4>4</option>
<option value = 5>5</option>
<option value = 6>6</option>
<option value = 7>7</option>
<option value = 8>8</option>
<option value = 9>9</option>
<option value = 10>10</option>
<option value = 11>11</option>
<option value = 12>12</option>
</select>
<td valign="top">E-Mail Address</td>
<input type="text" name="fn_up_email" value="test49@thomasmartin.com" size="30" maxlength="100" />
<input type="hidden" name="currPIN" value="999999999949" />
<input type="hidden" name="currSID" value="200602191339337320978" />
<input type="hidden" name="actpin" value= />
Here is the Javascript to validate that form. PLEASE NOTE that there a few extra fields in the javascript validation which I removed from the form -- because they were just too large to include on this page.
function validate_profile() {
var strMsg = "The following fields need attention: \n" ;
var strMsg2 = ;
var blnShow = false ;
var theNowDate = new Date() ;
var theNowYear = theNowDate.getYear() ;
var theNowMonth = theNowDate.getMonth() ; for netscape 7 and other browsers? ie returns getYear as 4 digits (ie 2004) ns7 returns getYear as from 1900 (ie 104)
if (theNowYear < 1900) {
theNowYear += 1900 ;
}
var strField = ltrim(document.f_profile.fn_up_namefirst.value) ;
if (strField
) {
strMsg += "\nFirst Name (or initial) is required" ;
blnShow = true ;
}
var strField = ltrim(document.f_profile.fn_up_namelast.value) ;
if (strField==) {
strMsg += "\nLast Name is required" ;
blnShow = true ;
}
var strField = ltrim(document.f_profile.fn_up_zipcode.value) ;
if (strField
) {
strMsg += "\nZip/Postal Code is required" ;
blnShow = true ;
}
if (strField.length < 5) {
strMsg += "\nZip/Postal Code needs 5+ digits" ;
blnShow = true ;
}
var strField = ltrim(document.f_profile.fn_up_country.value) ;
if (strField=="--") {
strMsg += "\nCountry choice is required" ;
blnShow = true ;
}
var strField = ltrim(document.f_profile.fn_up_gender.value) ;
if (strField==) {
}
var strField = ltrim(document.f_profile.fn_up_birthY.value) ;
if (strField
) {
// old, for text field
strMsg += "\nBirth (YYYY) is required" ;
blnShow = true ;
}
var intYear = parseInt(strField) ;
if (intYear <= 1900 || intYear >= theNowYear) {
strMsg2 += "\nBirth (YYYY) must be between 1900 and " + theNowYear ;
blnShow = true ;
}
if (intYear == (theNowYear - 1)) {
strMsg2 += "\n You need to select your Birth (YYYY) Value" ;
blnShow = true ;
}
var strField = ltrim(document.f_profile.fn_up_birthM.value) ;
if (strField==) {
}
return true ;
}
Finally, here is the Javascript for validating the email address.
function isValidEmail(emailAddress) {
var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/ ;
return re.test(emailAddress) ;
}
Things to note:
In the <form> tag, the "name" is "f_profile" -- which is something that you see quite a bit in the Javascript validation.
Also in the <form> tag, there is an onsubmit="return validate_profile(this);" which is actually what causes the validation to happen locally, on the client browser.
Javascript needs to be included on the web page, either as text OR as a linked in page like this: <script language="javascript" type="text/javascript" src="./xyz_javascrip.js"></script>
Hope this helps someone else.
Disclaimer: Must of this "code" was taken from other web pages and/or some javascript source code libraries offered on the web.
Additions: strMsg2 += "\nuse of xyz.com by persons" ;
Javascript needs to be included on the web page, either as text OR as a linked in page like this: <script language="javascript" type="text/javascript" src="./xyz_javascrip.js"></script>
Deletions: strMsg2 += "\nuse of geopins.com by persons" ;
Javascript needs to be included on the web page, either as text OR as a linked in page like this: <script language="javascript" type="text/javascript" src="./geopins1.js"></script>
Additions: I can't really explain Javascript in this page, but I thought I'd send some existing code that I have in the hopes that it might be of help to some others.
<b>Items marked with * are required</b>
<td>
<table border="0" align="center">
Deletions: I can't really explain JavaScript in this email, but I thought I'd send some existing code that I have in the hopes that it might be of help to some others.
<tr>
<td align="center">
<b>Items marked with * are required</b>
</td>
Additions: Here is the Javascript to validate that form. PLEASE NOTE that there a few extra fields in the javascript validation which I removed from the form -- because they were just too large to include on this page.
Javascript needs to be included on the web page, either as text OR as a linked in page like this: <script language="javascript" type="text/javascript" src="./geopins1.js"></script>
Hope this helps someone else.
Disclaimer: Must of this "code" was taken from other web pages and/or some javascript source code libraries offered on the web.
Deletions: Here is the JavaScript to validate that form. PLEASE NOTE that there a few extra fields in the javascript validation which I removed from the form -- because they were just too large to include on this page.
Additions: Here is the JavaScript to validate that form. PLEASE NOTE that there a few extra fields in the javascript validation which I removed from the form -- because they were just too large to include on this page.
function validate_profile() {
var strMsg = "The following fields need attention: \n" ;
var strMsg2 = ;
var blnShow = false ;
var theNowDate = new Date() ;
var theNowYear = theNowDate.getYear() ;
var theNowMonth = theNowDate.getMonth() ;
// for netscape 7 and other browsers?
// ie returns getYear as 4 digits (ie 2004)
// ns7 returns getYear as from 1900 (ie 104)
if (theNowYear < 1900) {
theNowYear += 1900 ;
}
var strField = ltrim(document.f_profile.fn_up_namefirst.value) ;
if (strField==) {
strMsg += "\nFirst Name (or initial) is required" ;
blnShow = true ;
}
var strField = ltrim(document.f_profile.fn_up_namelast.value) ;
if (strField
) {
strMsg += "\nLast Name is required" ;
blnShow = true ;
}
var strField = ltrim(document.f_profile.fn_up_zipcode.value) ;
if (strField==) {
}
var strField = ltrim(document.f_profile.fn_up_gender.value) ;
if (strField
) {
strMsg += "\nGender choice is required" ;
blnShow = true ;
}
var strField = ltrim(document.f_profile.fn_up_birthY.value) ;
if (strField==) {
old, for text field
}
checking for 13 years of age!
var datBirth = new Date(intYear,intMonth-1,1) ;
var datCompare = new Date()
datCompare.setYear(theNowDate.getYear() - 13)
if (intYear != theNowYear - 1 && datBirth > datCompare) {
strMsg = "" ;
strMsg2 = "\nOur Terms of Service prohibit" ;
strMsg2 += "\nuse of geopins.com by persons" ;
strMsg2 += "\nunder the age of 13." ;
}
return true ;
}
Finally, here is the JavaScript for validating the email address.
function isValidEmail(emailAddress) {
var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/ ;
return re.test(emailAddress) ;
}
Things to note:
In the <form> tag, the "name" is "f_profile" -- which is something that you see quite a bit in the JavaScript validation.
Also in the <form> tag, there is an onsubmit="return validate_profile(this);" which is actually what causes the validation to happen locally, on the client browser.
Deletions: <td valign="top">First Name</td><td valign="top">*</td><td valign="top"><input type="text" name="fn_up_namefirst" value="Thomas" size="24" maxlength="20" /></td></tr><tr>
<td valign="top">Last Name</td><td valign="top">*</td><td valign="top"><input type="text" name="fn_up_namelast" value= size="24" maxlength="20" />
Address 1
Address 2 size="30" maxlength="40" /></td></tr><tr>
<td valign="top">Address 3</td><td valign="top"> </td><td valign="top"><input type="text" name="fn_up_addr3" value= size="30" maxlength="40" />
City
State
Zip/Postal Code*
Country*
Gender (M/F)*>- Choose -</option>
<option value ="m" selected>Male</option>
<option value ="f">Female</option>
</select></td></tr><tr>
<td valign="top">Birth (YYYY)</td><td valign="top">*</td><td valign="top"><select name="fn_up_birthY">
<option value = 2005>2005</option>
<option value = 2004>2004</option>
<option value = 2003>2003</option>
<option value = 2002>2002</option>
<option value = 2001>2001</option>
<option value = 2000>2000</option>
<option value = 1999>1999</option>
<option value = 1998>1998</option>
<option value = 1997>1997</option>
<option value = 1996>1996</option>
<option value = 1995>1995</option>
<option value = 1994>1994</option>
<option value = 1993>1993</option>
<option value = 1992>1992</option>
<option value = 1991>1991</option>
<option value = 1990>1990</option>
<option value = 1989>1989</option>
<option value = 1988>1988</option>
<option value = 1987>1987</option>
<option value = 1986>1986</option>
<option value = 1985>1985</option>
<option value = 1984>1984</option>
<option value = 1983>1983</option>
<option value = 1982>1982</option>
<option value = 1981>1981</option>
<option value = 1980>1980</option>
<option value = 1979>1979</option>
<option value = 1978>1978</option>
<option value = 1977>1977</option>
<option value = 1976>1976</option>
<option value = 1975>1975</option>
<option value = 1974>1974</option>
<option value = 1973>1973</option>
<option value = 1972>1972</option>
<option value = 1971>1971</option>
<option value = 1970>1970</option>
<option value = 1969>1969</option>
<option value = 1968>1968</option>
<option value = 1967>1967</option>
<option value = 1966>1966</option>
<option value = 1965>1965</option>
<option value = 1964>1964</option>
<option value = 1963>1963</option>
<option value = 1962>1962</option>
<option value = 1961>1961</option>
<option value = 1960>1960</option>
<option value = 1959>1959</option>
<option value = 1958>1958</option>
<option value = 1957 selected>1957</option>
<option value = 1956>1956</option>
<option value = 1955>1955</option>
<option value = 1954>1954</option>
<option value = 1953>1953</option>
<option value = 1952>1952</option>
<option value = 1951>1951</option>
<option value = 1950>1950</option>
<option value = 1949>1949</option>
<option value = 1948>1948</option>
<option value = 1947>1947</option>
<option value = 1946>1946</option>
<option value = 1945>1945</option>
<option value = 1944>1944</option>
<option value = 1943>1943</option>
<option value = 1942>1942</option>
<option value = 1941>1941</option>
<option value = 1940>1940</option>
<option value = 1939>1939</option>
<option value = 1938>1938</option>
<option value = 1937>1937</option>
<option value = 1936>1936</option>
<option value = 1935>1935</option>
<option value = 1934>1934</option>
<option value = 1933>1933</option>
<option value = 1932>1932</option>
<option value = 1931>1931</option>
<option value = 1930>1930</option>
<option value = 1929>1929</option>
<option value = 1928>1928</option>
<option value = 1927>1927</option>
<option value = 1926>1926</option>
<option value = 1925>1925</option>
<option value = 1924>1924</option>
<option value = 1923>1923</option>
<option value = 1922>1922</option>
<option value = 1921>1921</option>
<option value = 1920>1920</option>
<option value = 1919>1919</option>
<option value = 1918>1918</option>
<option value = 1917>1917</option>
<option value = 1916>1916</option>
<option value = 1915>1915</option>
<option value = 1914>1914</option>
<option value = 1913>1913</option>
<option value = 1912>1912</option>
<option value = 1911>1911</option>
<option value = 1910>1910</option>
<option value = 1909>1909</option>
<option value = 1908>1908</option>
<option value = 1907>1907</option>
<option value = 1906>1906</option>
</select></td></tr><tr>
<td valign="top">Birth (MM)</td><td valign="top">*</td><td valign="top"><select name="fn_up_birthM">
</select></td></tr><tr>
<td valign="top">E-Mail Address</td><td valign="top">*</td><td valign="top"><input type="text" name="fn_up_email" value="test49@thomasmartin.com" size="30" maxlength="100" /></td></tr><tr>
<td valign="top">Phone Number</td><td valign="top"> </td><td valign="top"><input type="text" name="fn_up_phone" value="404-593-3333" size="30" maxlength="25" /></td></tr></table>
I can't really explain JavaScript in this email, but I thought I'd send some existing code that I have in the hopes that it might be of help to some others.
Here is a sample of an HTML Form for a basic user profile:
<form method="post" name="f_profile" action="default.asp" onsubmit="return validate_profile(this);">
<table align="center" border="0">
<tr>
<td align="center">
<b>Items marked with * are required</b>
</td>
</tr>
<tr>
<td>
<table border="0" align="center">
<tr>
<td valign="top">First Name</td><td valign="top">*</td><td valign="top"><input type="text" name="fn_up_namefirst" value="Thomas" size="24" maxlength="20" /></td></tr><tr>
<td valign="top">Last Name</td><td valign="top">*</td><td valign="top"><input type="text" name="fn_up_namelast" value="" size="24" maxlength="20" /></td></tr><tr>
<td valign="top">Address 1</td><td valign="top"> </td><td valign="top"><input type="text" name="fn_up_addr1" value="6050 Peachtree Pkwy, #240-200" size="30" maxlength="40" /></td></tr><tr>
<td valign="top">Address 2</td><td valign="top"> </td><td valign="top"><input type="text" name="fn_up_addr2" value="" size="30" maxlength="40" /></td></tr><tr>
<td valign="top">Address 3</td><td valign="top"> </td><td valign="top"><input type="text" name="fn_up_addr3" value="" size="30" maxlength="40" /></td></tr><tr>
<td valign="top">City</td><td valign="top"> </td><td valign="top"><input type="text" name="fn_up_city" value="Norcross" size="30" maxlength="25" /></td></tr><tr>
<td valign="top">State</td><td valign="top"> </td><td valign="top"><select name="fn_up_state">
<option value = -->- Choose -</option>
<option value = AL>Alabama</option>
<option value = AK>Alaska</option>
<option value = AZ>Arizona</option>
<option value = AR>Arkansas</option>
<option value = CA>California</option>
<option value = CO>Colorado</option>
<option value = CT>Connecticut</option>
<option value = DE>Delaware</option>
<option value = FL>Florida</option>
<option value = GA selected>Georgia</option>
<option value = HI>Hawaii</option>
<option value = ID>Idaho</option>
<option value = IL>Illinois</option>
<option value = IN>Indiana</option>
<option value = IA>Iowa</option>
<option value = KS>Kansas</option>
<option value = KY>Kentucky</option>
<option value = LA>Louisiana</option>
<option value = ME>Maine</option>
<option value = MD>Maryland</option>
<option value = MA>Massachusetts</option>
<option value = MI>Michigan</option>
<option value = MN>Minnesota</option>
<option value = MS>Mississippi</option>
<option value = MO>Missouri</option>
<option value = MT>Montana</option>
<option value = NE>Nebraska</option>
<option value = NV>Nevada</option>
<option value = NH>New Hampshire</option>
<option value = NJ>New Jersey</option>
<option value = NM>New Mexico</option>
<option value = NY>New York</option>
<option value = NC>North Carolina</option>
<option value = ND>North Dakota</option>
<option value = OH>Ohio</option>
<option value = OK>Oklahoma</option>
<option value = OR>Oregon</option>
<option value = PA>Pennsylvania</option>
<option value = RI>Rhode Island</option>
<option value = SC>South Carolina</option>
<option value = SD>South Dakota</option>
<option value = TN>Tennessee</option>
<option value = TX>Texas</option>
<option value = UT>Utah</option>
<option value = VT>Vermont</option>
<option value = VA>Virginia</option>
<option value = WA>Washington</option>
<option value = DC>Washington D.C.</option>
<option value = WV>West Virginia</option>
<option value = WI>Wisconsin</option>
<option value = WY>Wyoming</option>
<option value = XX>Not in U.S.</option>
</select></td></tr><tr>
<td valign="top">Zip/Postal Code</td><td valign="top">*</td><td valign="top"><input type="text" name="fn_up_zipcode" value="30092" size="12" maxlength="10" /></td></tr><tr>
<td valign="top">Country</td><td valign="top">*</td><td valign="top"><select name="fn_up_country">
<option value = -->- Choose -</option>
<option value = US selected>UNITED STATES</option>
<option value = AF>AFGHANISTAN</option>
<option value = AX>ALAND ISLANDS</option>
<option value = AL>ALBANIA</option>
<option value = DZ>ALGERIA</option>
<option value = AS>AMERICAN SAMOA</option>
<option value = AD>ANDORRA</option>
<option value = AO>ANGOLA</option>
<option value = AI>ANGUILLA</option>
<option value = AQ>ANTARCTICA</option>
<option value = AG>ANTIGUA AND BARBUDA</option>
<option value = AR>ARGENTINA</option>
<option value = AM>ARMENIA</option>
<option value = AW>ARUBA</option>
<option value = AU>AUSTRALIA</option>
<option value = AT>AUSTRIA</option>
<option value = AZ>AZERBAIJAN</option>
<option value = BS>BAHAMAS</option>
<option value = BH>BAHRAIN</option>
<option value = BD>BANGLADESH</option>
<option value = BB>BARBADOS</option>
<option value = BY>BELARUS</option>
<option value = BE>BELGIUM</option>
<option value = BZ>BELIZE</option>
<option value = BJ>BENIN</option>
<option value = BM>BERMUDA</option>
<option value = BT>BHUTAN</option>
<option value = BO>BOLIVIA</option>
<option value = BA>BOSNIA AND HERZEGOVINA</option>
<option value = BW>BOTSWANA</option>
<option value = BV>BOUVET ISLAND</option>
<option value = BR>BRAZIL</option>
<option value = IO>BRITISH INDIAN OCEAN TERRITORY</option>
<option value = BN>BRUNEI DARUSSALAM</option>
<option value = BG>BULGARIA</option>
<option value = BF>BURKINA FASO</option>
<option value = BI>BURUNDI</option>
<option value = KH>CAMBODIA</option>
<option value = CM>CAMEROON</option>
<option value = CA>CANADA</option>
<option value = CV>CAPE VERDE</option>
<option value = KY>CAYMAN ISLANDS</option>
<option value = CF>CENTRAL AFRICAN REPUBLIC</option>
<option value = TD>CHAD</option>
<option value = CL>CHILE</option>
<option value = CN>CHINA</option>
<option value = CX>CHRISTMAS ISLAND</option>
<option value = CC>COCOS (KEELING) ISLANDS</option>
<option value = CO>COLOMBIA</option>
<option value = KM>COMOROS</option>
<option value = CG>CONGO</option>
<option value = CD>CONGO, THE DEMOCRATIC REPUBLIC OF THE</option>
<option value = CK>COOK ISLANDS</option>
<option value = CR>COSTA RICA</option>
<option value = CI>COTE D'IVOIRE</option>
<option value = HR>CROATIA</option>
<option value = CU>CUBA</option>
<option value = CY>CYPRUS</option>
<option value = CZ>CZECH REPUBLIC</option>
<option value = DK>DENMARK</option>
<option value = DJ>DJIBOUTI</option>
<option value = DM>DOMINICA</option>
<option value = DO>DOMINICAN REPUBLIC</option>
<option value = EC>ECUADOR</option>
<option value = EG>EGYPT</option>
<option value = SV>EL SALVADOR</option>
<option value = GQ>EQUATORIAL GUINEA</option>
<option value = ER>ERITREA</option>
<option value = EE>ESTONIA</option>
<option value = ET>ETHIOPIA</option>
<option value = FK>FALKLAND ISLANDS (MALVINAS)</option>
<option value = FO>FAROE ISLANDS</option>
<option value = FJ>FIJI</option>
<option value = FI>FINLAND</option>
<option value = FR>FRANCE</option>
<option value = GF>FRENCH GUIANA</option>
<option value = PF>FRENCH POLYNESIA</option>
<option value = TF>FRENCH SOUTHERN TERRITORIES</option>
<option value = GA>GABON</option>
<option value = GM>GAMBIA</option>
<option value = GE>GEORGIA</option>
<option value = DE>GERMANY</option>
<option value = GH>GHANA</option>
<option value = GI>GIBRALTAR</option>
<option value = GR>GREECE</option>
<option value = GL>GREENLAND</option>
<option value = GD>GRENADA</option>
<option value = GP>GUADELOUPE</option>
<option value = GU>GUAM</option>
<option value = GT>GUATEMALA</option>
<option value = GN>GUINEA</option>
<option value = GW>GUINEA-BISSAU</option>
<option value = GY>GUYANA</option>
<option value = HT>HAITI</option>
<option value = HM>HEARD ISLAND AND MCDONALD ISLANDS</option>
<option value = VA>HOLY SEE (VATICAN CITY STATE)</option>
<option value = HN>HONDURAS</option>
<option value = HK>HONG KONG</option>
<option value = HU>HUNGARY</option>
<option value = IS>ICELAND</option>
<option value = IN>INDIA</option>
<option value = ID>INDONESIA</option>
<option value = IR>IRAN, ISLAMIC REPUBLIC OF</option>
<option value = IQ>IRAQ</option>
<option value = IE>IRELAND</option>
<option value = IL>ISRAEL</option>
<option value = IT>ITALY</option>
<option value = JM>JAMAICA</option>
<option value = JP>JAPAN</option>
<option value = JO>JORDAN</option>
<option value = KZ>KAZAKHSTAN</option>
<option value = KE>KENYA</option>
<option value = KI>KIRIBATI</option>
<option value = KP>KOREA, DEMOCRATIC PEOPLE'S REPUBLIC OF</option>
<option value = KR>KOREA, REPUBLIC OF</option>
<option value = KW>KUWAIT</option>
<option value = KG>KYRGYZSTAN</option>
<option value = LA>LAO PEOPLE'S DEMOCRATIC REPUBLIC</option>
<option value = LV>LATVIA</option>
<option value = LB>LEBANON</option>
<option value = LS>LESOTHO</option>
<option value = LR>LIBERIA</option>
<option value = LY>LIBYAN ARAB JAMAHIRIYA</option>
<option value = LI>LIECHTENSTEIN</option>
<option value = LT>LITHUANIA</option>
<option value = LU>LUXEMBOURG</option>
<option value = MO>MACAO</option>
<option value = MK>MACEDONIA, THE FORMER YUGOSLAV REPUBLIC OF</option>
<option value = MG>MADAGASCAR</option>
<option value = MW>MALAWI</option>
<option value = MY>MALAYSIA</option>
<option value = MV>MALDIVES</option>
<option value = ML>MALI</option>
<option value = MT>MALTA</option>
<option value = MH>MARSHALL ISLANDS</option>
<option value = MQ>MARTINIQUE</option>
<option value = MR>MAURITANIA</option>
<option value = MU>MAURITIUS</option>
<option value = YT>MAYOTTE</option>
<option value = MX>MEXICO</option>
<option value = FM>MICRONESIA, FEDERATED STATES OF</option>
<option value = MD>MOLDOVA, REPUBLIC OF</option>
<option value = MC>MONACO</option>
<option value = MN>MONGOLIA</option>
<option value = MS>MONTSERRAT</option>
<option value = MA>MOROCCO</option>
<option value = MZ>MOZAMBIQUE</option>
<option value = MM>MYANMAR</option>
<option value = NA>NAMIBIA</option>
<option value = NR>NAURU</option>
<option value = NP>NEPAL</option>
<option value = NL>NETHERLANDS</option>
<option value = AN>NETHERLANDS ANTILLES</option>
<option value = NC>NEW CALEDONIA</option>
<option value = NZ>NEW ZEALAND</option>
<option value = NI>NICARAGUA</option>
<option value = NE>NIGER</option>
<option value = NG>NIGERIA</option>
<option value = NU>NIUE</option>
<option value = NF>NORFOLK ISLAND</option>
<option value = MP>NORTHERN MARIANA ISLANDS</option>
<option value = NO>NORWAY</option>
<option value = OM>OMAN</option>
<option value = PK>PAKISTAN</option>
<option value = PW>PALAU</option>
<option value = PS>PALESTINIAN TERRITORY, OCCUPIED</option>
<option value = PA>PANAMA</option>
<option value = PG>PAPUA NEW GUINEA</option>
<option value = PY>PARAGUAY</option>
<option value = PE>PERU</option>
<option value = PH>PHILIPPINES</option>
<option value = PN>PITCAIRN</option>
<option value = PL>POLAND</option>
<option value = PT>PORTUGAL</option>
<option value = PR>PUERTO RICO</option>
<option value = QA>QATAR</option>
<option value = RE>REUNION</option>
<option value = RO>ROMANIA</option>
<option value = RU>RUSSIAN FEDERATION</option>
<option value = RW>RWANDA</option>
<option value = SH>SAINT HELENA</option>
<option value = KN>SAINT KITTS AND NEVIS</option>
<option value = LC>SAINT LUCIA</option>
<option value = PM>SAINT PIERRE AND MIQUELON</option>
<option value = VC>SAINT VINCENT AND THE GRENADINES</option>
<option value = WS>SAMOA</option>
<option value = SM>SAN MARINO</option>
<option value = ST>SAO TOME AND PRINCIPE</option>
<option value = SA>SAUDI ARABIA</option>
<option value = SN>SENEGAL</option>
<option value = CS>SERBIA AND MONTENEGRO</option>
<option value = SC>SEYCHELLES</option>
<option value = SL>SIERRA LEONE</option>
<option value = SG>SINGAPORE</option>
<option value = SK>SLOVAKIA</option>
<option value = SI>SLOVENIA</option>
<option value = SB>SOLOMON ISLANDS</option>
<option value = SO>SOMALIA</option>
<option value = ZA>SOUTH AFRICA</option>
<option value = GS>SOUTH GEORGIA AND THE SOUTH SANDWICH ISLANDS</option>
<option value = ES>SPAIN</option>
<option value = LK>SRI LANKA</option>
<option value = SD>SUDAN</option>
<option value = SR>SURINAME</option>
<option value = SJ>SVALBARD AND JAN MAYEN</option>
<option value = SZ>SWAZILAND</option>
<option value = SE>SWEDEN</option>
<option value = CH>SWITZERLAND</option>
<option value = SY>SYRIAN ARAB REPUBLIC</option>
<option value = TW>TAIWAN, PROVINCE OF CHINA</option>
<option value = TJ>TAJIKISTAN</option>
<option value = TZ>TANZANIA, UNITED REPUBLIC OF</option>
<option value = TH>THAILAND</option>
<option value = TL>TIMOR-LESTE</option>
<option value = TG>TOGO</option>
<option value = TK>TOKELAU</option>
<option value = TO>TONGA</option>
<option value = TT>TRINIDAD AND TOBAGO</option>
<option value = TN>TUNISIA</option>
<option value = TR>TURKEY</option>
<option value = TM>TURKMENISTAN</option>
<option value = TC>TURKS AND CAICOS ISLANDS</option>
<option value = TV>TUVALU</option>
<option value = UG>UGANDA</option>
<option value = UA>UKRAINE</option>
<option value = AE>UNITED ARAB EMIRATES</option>
<option value = GB>UNITED KINGDOM</option>
<option value = UM>UNITED STATES MINOR OUTLYING ISLANDS</option>
<option value = UY>URUGUAY</option>
<option value = UZ>UZBEKISTAN</option>
<option value = VU>VANUATU</option>
<option value = VE>VENEZUELA</option>
<option value = VN>VIET NAM</option>
<option value = VG>VIRGIN ISLANDS, BRITISH</option>
<option value = VI>VIRGIN ISLANDS, U.S.</option>
<option value = WF>WALLIS AND FUTUNA</option>
<option value = EH>WESTERN SAHARA</option>
<option value = YE>YEMEN</option>
<option value = ZM>ZAMBIA</option>
<option value = ZW>ZIMBABWE</option>
</select></td></tr><tr>
<td valign="top">Gender (M/F)</td><td valign="top">*</td><td valign="top"><select name="fn_up_gender">
<option value ="">- Choose -</option>
<option value ="m" selected>Male</option>
<option value ="f">Female</option>
</select></td></tr><tr>
<td valign="top">Birth (YYYY)</td><td valign="top">*</td><td valign="top"><select name="fn_up_birthY">
<option value = 2005>2005</option>
<option value = 2004>2004</option>
<option value = 2003>2003</option>
<option value = 2002>2002</option>
<option value = 2001>2001</option>
<option value = 2000>2000</option>
<option value = 1999>1999</option>
<option value = 1998>1998</option>
<option value = 1997>1997</option>
<option value = 1996>1996</option>
<option value = 1995>1995</option>
<option value = 1994>1994</option>
<option value = 1993>1993</option>
<option value = 1992>1992</option>
<option value = 1991>1991</option>
<option value = 1990>1990</option>
<option value = 1989>1989</option>
<option value = 1988>1988</option>
<option value = 1987>1987</option>
<option value = 1986>1986</option>
<option value = 1985>1985</option>
<option value = 1984>1984</option>
<option value = 1983>1983</option>
<option value = 1982>1982</option>
<option value = 1981>1981</option>
<option value = 1980>1980</option>
<option value = 1979>1979</option>
<option value = 1978>1978</option>
<option value = 1977>1977</option>
<option value = 1976>1976</option>
<option value = 1975>1975</option>
<option value = 1974>1974</option>
<option value = 1973>1973</option>
<option value = 1972>1972</option>
<option value = 1971>1971</option>
<option value = 1970>1970</option>
<option value = 1969>1969</option>
<option value = 1968>1968</option>
<option value = 1967>1967</option>
<option value = 1966>1966</option>
<option value = 1965>1965</option>
<option value = 1964>1964</option>
<option value = 1963>1963</option>
<option value = 1962>1962</option>
<option value = 1961>1961</option>
<option value = 1960>1960</option>
<option value = 1959>1959</option>
<option value = 1958>1958</option>
<option value = 1957 selected>1957</option>
<option value = 1956>1956</option>
<option value = 1955>1955</option>
<option value = 1954>1954</option>
<option value = 1953>1953</option>
<option value = 1952>1952</option>
<option value = 1951>1951</option>
<option value = 1950>1950</option>
<option value = 1949>1949</option>
<option value = 1948>1948</option>
<option value = 1947>1947</option>
<option value = 1946>1946</option>
<option value = 1945>1945</option>
<option value = 1944>1944</option>
<option value = 1943>1943</option>
<option value = 1942>1942</option>
<option value = 1941>1941</option>
<option value = 1940>1940</option>
<option value = 1939>1939</option>
<option value = 1938>1938</option>
<option value = 1937>1937</option>
<option value = 1936>1936</option>
<option value = 1935>1935</option>
<option value = 1934>1934</option>
<option value = 1933>1933</option>
<option value = 1932>1932</option>
<option value = 1931>1931</option>
<option value = 1930>1930</option>
<option value = 1929>1929</option>
<option value = 1928>1928</option>
<option value = 1927>1927</option>
<option value = 1926>1926</option>
<option value = 1925>1925</option>
<option value = 1924>1924</option>
<option value = 1923>1923</option>
<option value = 1922>1922</option>
<option value = 1921>1921</option>
<option value = 1920>1920</option>
<option value = 1919>1919</option>
<option value = 1918>1918</option>
<option value = 1917>1917</option>
<option value = 1916>1916</option>
<option value = 1915>1915</option>
<option value = 1914>1914</option>
<option value = 1913>1913</option>
<option value = 1912>1912</option>
<option value = 1911>1911</option>
<option value = 1910>1910</option>
<option value = 1909>1909</option>
<option value = 1908>1908</option>
<option value = 1907>1907</option>
<option value = 1906>1906</option>
</select></td></tr><tr>
<td valign="top">Birth (MM)</td><td valign="top">*</td><td valign="top"><select name="fn_up_birthM">
<option value = 1>1</option>
<option value = 2>2</option>
<option value = 3 selected>3</option>
<option value = 4>4</option>
<option value = 5>5</option>
<option value = 6>6</option>
<option value = 7>7</option>
<option value = 8>8</option>
<option value = 9>9</option>
<option value = 10>10</option>
<option value = 11>11</option>
<option value = 12>12</option>
</select></td></tr><tr>
<td valign="top">E-Mail Address</td><td valign="top">*</td><td valign="top"><input type="text" name="fn_up_email" value="test49@thomasmartin.com" size="30" maxlength="100" /></td></tr><tr>
<td valign="top">Phone Number</td><td valign="top"> </td><td valign="top"><input type="text" name="fn_up_phone" value="404-593-3333" size="30" maxlength="25" /></td></tr></table>
</td>
</tr>
<tr>
<td colspan="2"> </td>
</tr>
<tr>
<td align="center">
<input type="hidden" name="currPIN" value="999999999949" /><input type="hidden" name="currSID" value="200602191339337320978" />
<input type="hidden" name="actpin" value="" />
<input type="hidden" name="nextscreen" value="scr5086" />
<input type="submit" name="submit" value="Submit" />
<input type="reset" name="cancel" value="Cancel" onclick="history.go(-1)" />
</td>
</tr>
</table>
</form>