[Javascript] Why won't this work????

Cutter (JavaScript) javascript at theblades-family.com
Wed Jan 29 13:48:12 CST 2003


The script is to loop through the "fieldnames" array to validate each 
field specified. Each "Item" of the "fieldnames" array is an array:

Fieldname, FieldType, ErrorMessage, ValidateForBadCharacters, 
ValidateAnEmailAddress

I started by just checking for "isEmpty", which is working fine. Then I 
began testing for bad characters (checkChar). This took a little 
tweeking, but now it's working fine. Then I began to test the email.

Ouch! Process stops here: check if "isEmpty", then check if it needs a 
character check (blValChar) and if it does then do it (checkChar). Then 
check if the field needs an address validation (blValMail)...

This is where it stops. It gets to "phone", sees that it is not empty, 
then does the first boolean (blValChar) and since it does it performs 
the character check (checkChar). Then it goes to check if it requires 
address validation (blValMail)...and it breaks. The "blValMail" function 
(for the first time) throws an error stating that 'Item.4' is null or 
not an object.

I can't figure it out, it's been driving me nuts for hours now. Any help 
is greatly appreciated...(Here's the basic form)

<form action="process2.cfm" method="post" onsubmit="return 
valForm(this)" name="Form1">
<input type="hidden" name="subject" value="Literature Request">
<input type="hidden" name="poster" value="1">

<div style="text-align:center;">
<table border="0" width="450" cellpadding="2" border="#C0C0C0" 
cellspacing="0">
    <tr>
        <td class="clsFieldName" align="right" width="25%">
            Name:&nbsp;
        </td>
        <td width="75%">
            <input type="Text" name="name" size="47" class="clsBoxes" />
        </td>
    </tr>
    <tr>
        <td class="clsFieldName" align="right">
            Title:&nbsp;
        </td>
        <td>
            <input type="Text" name="title" size="47" class="clsBoxes" />
        </td>
    </tr>
    <tr>
        <td class="clsFieldName" align="right">
            Company:&nbsp;
        </td>
        <td>
            <input type="Text" name="company" size="47" class="clsBoxes" />
        </td>
    </tr>
   
    <tr>
        <td class="clsFieldName" align="right">
            Address:&nbsp;
        </td>
        <td>
            <input type="Text" name="address" size="47" maxlength="110" 
class="clsBoxes" /><br />
            <input type="Text" name="address2" size="47" maxlength="110" 
class="clsBoxes" />
        </td>
    </tr>
    <tr>
        <td class="clsFieldName" align="right">
            City/State/Zip:&nbsp;
        </td>
        <td>
            <input type="Text" name="city" size="22" maxlength="75" 
class="clsBoxes" />,&nbsp;
            <select name="state_province" class="clsBoxes">
                <option value="">
               
                    <option value="AA">AA</option>
               
                    <option value="AE">AE</option>
               
                    <option value="AK">AK</option>
               
                    <option value="AL">AL</option>
               
                    <option value="AP">AP</option>
               
                    <option value="AR">AR</option>
               
                    <option value="AZ">AZ</option>
               
                    <option value="CA">CA</option>
               
                    <option value="CO">CO</option>
               
                    <option value="CT">CT</option>
               
                    <option value="DC">DC</option>
               
                    <option value="DE">DE</option>
               
                    <option value="FL">FL</option>
               
                    <option value="GA">GA</option>
               
                    <option value="HI">HI</option>
               
                    <option value="IA">IA</option>
               
                    <option value="ID">ID</option>
               
                    <option value="IL">IL</option>
               
                    <option value="IN">IN</option>
               
                    <option value="KS">KS</option>
               
                    <option value="KY">KY</option>
               
                    <option value="LA">LA</option>
               
                    <option value="MA">MA</option>
               
                    <option value="MD">MD</option>
               
                    <option value="ME">ME</option>
               
                    <option value="MI">MI</option>
               
                    <option value="MN">MN</option>
               
                    <option value="MO">MO</option>
               
                    <option value="MS">MS</option>
               
                    <option value="MT">MT</option>
               
                    <option value="NC">NC</option>
               
                    <option value="ND">ND</option>
               
                    <option value="NE">NE</option>
               
                    <option value="NH">NH</option>
               
                    <option value="NJ">NJ</option>
               
                    <option value="NM">NM</option>
               
                    <option value="NV">NV</option>
               
                    <option value="NY">NY</option>
               
                    <option value="OH">OH</option>
               
                    <option value="OK">OK</option>
               
                    <option value="OR">OR</option>
               
                    <option value="PA">PA</option>
               
                    <option value="RI">RI</option>
               
                    <option value="SC">SC</option>
               
                    <option value="SD">SD</option>
               
                    <option value="TN">TN</option>
               
                    <option value="TX">TX</option>
               
                    <option value="UT">UT</option>
               
                    <option value="VA">VA</option>
               
                    <option value="VT">VT</option>
               
                    <option value="WA">WA</option>
               
                    <option value="WI">WI</option>
               
                    <option value="WV">WV</option>
               
                    <option value="WY">WY</option>
               
            </select>&nbsp;
            <input type="Text" name="zip_or_country_code" size="10" 
class="clsBoxes" />
        </td>
    </tr>
    <tr>
        <td class="clsFieldName" align="right">
            Country:&nbsp;
        </td>
        <td>
            <select name="country" class="clsBoxes">
                <option value="" selected> - Select Your Country - </option>
               
                    <option value="intCountryID"> Afghanistan</option>
               
                    <option value="intCountryID"> Albania</option>
               
                    <option value="intCountryID"> Algeria</option>
               
                    <option value="intCountryID"> American Samoa</option>
               
                    <option value="intCountryID"> Andorra</option>
               
                    <option value="intCountryID"> Angola</option>
               
                    <option value="intCountryID"> Anguilla</option>
               
                    <option value="intCountryID"> Antarctica</option>
               
                    <option value="intCountryID"> Antigua and 
Barbuda</option>
               
                    <option value="intCountryID"> Argentina</option>
               
                    <option value="intCountryID"> Armenia</option>
               
                    <option value="intCountryID"> Aruba</option>
               
                    <option value="intCountryID"> Ashmore and Cartier 
Islands</option>
               
                    <option value="intCountryID"> Australia</option>
               
                    <option value="intCountryID"> Austria</option>
               
                    <option value="intCountryID"> Azerbaijan</option>
               
                    <option value="intCountryID"> Bahrain</option>
               
                    <option value="intCountryID"> Baker Island</option>
               
                    <option value="intCountryID"> Bangladesh</option>
               
                    <option value="intCountryID"> Barbados</option>
               
                    <option value="intCountryID"> Bassas da India</option>
               
                    <option value="intCountryID"> Belarus</option>
               
                    <option value="intCountryID"> Belgium</option>
               
                    <option value="intCountryID"> Belize</option>
               
                    <option value="intCountryID"> Benin</option>
               
                    <option value="intCountryID"> Bermuda</option>
               
                    <option value="intCountryID"> Bhutan</option>
               
                    <option value="intCountryID"> Bolivia</option>
               
                    <option value="intCountryID"> Bosnia and 
Herzegovina</option>
               
                    <option value="intCountryID"> Botswana</option>
               
                    <option value="intCountryID"> Bouvet Island</option>
               
                    <option value="intCountryID"> Brazil</option>
               
                    <option value="intCountryID"> British Indian Ocean 
Territory</option>
               
                    <option value="intCountryID"> British Virgin 
Islands</option>
               
                    <option value="intCountryID"> Brunei</option>
               
                    <option value="intCountryID"> Bulgaria</option>
               
                    <option value="intCountryID"> Burkina Faso</option>
               
                    <option value="intCountryID"> Burma</option>
               
                    <option value="intCountryID"> Burundi</option>
               
                    <option value="intCountryID"> Cambodia</option>
               
                    <option value="intCountryID"> Cameroon</option>
               
                    <option value="intCountryID"> Canada</option>
               
                    <option value="intCountryID"> Cape Verde</option>
               
                    <option value="intCountryID"> Cayman Islands</option>
               
                    <option value="intCountryID"> Central African 
Republic</option>
               
                    <option value="intCountryID"> Chad</option>
               
                    <option value="intCountryID"> Chile</option>
               
                    <option value="intCountryID"> China</option>
               
                    <option value="intCountryID"> Christmas Island</option>
               
                    <option value="intCountryID"> Clipperton Island</option>
               
                    <option value="intCountryID"> Cocos (Keeling) 
Islands</option>
               
                    <option value="intCountryID"> Colombia</option>
               
                    <option value="intCountryID"> Comoros</option>
               
                    <option value="intCountryID"> Cook Islands</option>
               
                    <option value="intCountryID"> Coral Sea Islands</option>
               
                    <option value="intCountryID"> Costa Rica</option>
               
                    <option value="intCountryID"> Cote d'Ivoire</option>
               
                    <option value="intCountryID"> Croatia</option>
               
                    <option value="intCountryID"> Cyprus</option>
               
                    <option value="intCountryID"> Czech Republic</option>
               
                    <option value="intCountryID"> Democratic Republic of 
the Congo</option>
               
                    <option value="intCountryID"> Denmark</option>
               
                    <option value="intCountryID"> Djibouti</option>
               
                    <option value="intCountryID"> Dominica</option>
               
                    <option value="intCountryID"> Dominican 
Republic</option>
               
                    <option value="intCountryID"> Ecuador</option>
               
                    <option value="intCountryID"> Egypt</option>
               
                    <option value="intCountryID"> El Salvador</option>
               
                    <option value="intCountryID"> Equatorial Guinea</option>
               
                    <option value="intCountryID"> Eritrea</option>
               
                    <option value="intCountryID"> Estonia</option>
               
                    <option value="intCountryID"> Ethiopia</option>
               
                    <option value="intCountryID"> Europa Island</option>
               
                    <option value="intCountryID"> Falkland Islands 
(Islas Malvinas)</option>
               
                    <option value="intCountryID"> Faroe Islands</option>
               
                    <option value="intCountryID"> Federated States of 
Micornesia</option>
               
                    <option value="intCountryID"> Fiji</option>
               
                    <option value="intCountryID"> Finland</option>
               
                    <option value="intCountryID"> France</option>
               
                    <option value="intCountryID"> French Guiana</option>
               
                    <option value="intCountryID"> French Polynesia</option>
               
                    <option value="intCountryID"> French Southern and 
Antarctic Lands</option>
               
                    <option value="intCountryID"> Gabon</option>
               
                    <option value="intCountryID"> Gaza Strip</option>
               
                    <option value="intCountryID"> Georgia</option>
               
                    <option value="intCountryID"> Germany</option>
               
                    <option value="intCountryID"> Ghana</option>
               
                    <option value="intCountryID"> Gibraltar</option>
               
                    <option value="intCountryID"> Glorioso Islands</option>
               
                    <option value="intCountryID"> Greece</option>
               
                    <option value="intCountryID"> Greenland</option>
               
                    <option value="intCountryID"> Grenada</option>
               
                    <option value="intCountryID"> Guadeloupe</option>
               
                    <option value="intCountryID"> Guam</option>
               
                    <option value="intCountryID"> Guatemala</option>
               
                    <option value="intCountryID"> Guernsey</option>
               
                    <option value="intCountryID"> Guinea</option>
               
                    <option value="intCountryID"> Guinea-Bissau</option>
               
                    <option value="intCountryID"> Guyana</option>
               
                    <option value="intCountryID"> Haiti</option>
               
                    <option value="intCountryID"> Heard Island and 
McDonald Islands</option>
               
                    <option value="intCountryID"> Holy See (Vatican 
City)</option>
               
                    <option value="intCountryID"> Honduras</option>
               
                    <option value="intCountryID"> Hong Kong</option>
               
                    <option value="intCountryID"> Howland Island</option>
               
                    <option value="intCountryID"> Hungary</option>
               
                    <option value="intCountryID"> Iceland</option>
               
                    <option value="intCountryID"> India</option>
               
                    <option value="intCountryID"> Indian Ocean</option>
               
                    <option value="intCountryID"> Indonesia</option>
               
                    <option value="intCountryID"> Ireland</option>
               
                    <option value="intCountryID"> Isle of Man</option>
               
                    <option value="intCountryID"> Israel</option>
               
                    <option value="intCountryID"> Italy</option>
               
                    <option value="intCountryID"> Jamaica</option>
               
                    <option value="intCountryID"> Jan Mayen</option>
               
                    <option value="intCountryID"> Japan</option>
               
                    <option value="intCountryID"> Jarvis Island</option>
               
                    <option value="intCountryID"> Jersey</option>
               
                    <option value="intCountryID"> Johnston Atoll</option>
               
                    <option value="intCountryID"> Jordan</option>
               
                    <option value="intCountryID"> Juan de Nova 
Island</option>
               
                    <option value="intCountryID"> Kazakhstan</option>
               
                    <option value="intCountryID"> Kenya</option>
               
                    <option value="intCountryID"> Kingman Reef</option>
               
                    <option value="intCountryID"> Kiribati</option>
               
                    <option value="intCountryID"> Kuwait</option>
               
                    <option value="intCountryID"> Kyrgyzstan</option>
               
                    <option value="intCountryID"> Laos</option>
               
                    <option value="intCountryID"> Latvia</option>
               
                    <option value="intCountryID"> Lebanon</option>
               
                    <option value="intCountryID"> Lesotho</option>
               
                    <option value="intCountryID"> Liberia</option>
               
                    <option value="intCountryID"> Liechtenstein</option>
               
                    <option value="intCountryID"> Lithuania</option>
               
                    <option value="intCountryID"> Luxembourg</option>
               
                    <option value="intCountryID"> Macau</option>
               
                    <option value="intCountryID"> Madagascar</option>
               
                    <option value="intCountryID"> Malawi</option>
               
                    <option value="intCountryID"> Malaysia</option>
               
                    <option value="intCountryID"> Maldives</option>
               
                    <option value="intCountryID"> Mali</option>
               
                    <option value="intCountryID"> Malta</option>
               
                    <option value="intCountryID"> Marshall Islands</option>
               
                    <option value="intCountryID"> Martinique</option>
               
                    <option value="intCountryID"> Mauritania</option>
               
                    <option value="intCountryID"> Mauritius</option>
               
                    <option value="intCountryID"> Mayotte</option>
               
                    <option value="intCountryID"> Mexico</option>
               
                    <option value="intCountryID"> Midway Islands</option>
               
                    <option value="intCountryID"> Moldova</option>
               
                    <option value="intCountryID"> Monaco</option>
               
                    <option value="intCountryID"> Mongolia</option>
               
                    <option value="intCountryID"> Montserrat</option>
               
                    <option value="intCountryID"> Morocco</option>
               
                    <option value="intCountryID"> Mozambique</option>
               
                    <option value="intCountryID"> Namibia</option>
               
                    <option value="intCountryID"> Nauru</option>
               
                    <option value="intCountryID"> Navassa Island</option>
               
                    <option value="intCountryID"> Nepal</option>
               
                    <option value="intCountryID"> Netherlands</option>
               
                    <option value="intCountryID"> Netherlands 
Antilles</option>
               
                    <option value="intCountryID"> New Caledonia</option>
               
                    <option value="intCountryID"> New Zealand</option>
               
                    <option value="intCountryID"> Nicaragua</option>
               
                    <option value="intCountryID"> Niger</option>
               
                    <option value="intCountryID"> Nigeria</option>
               
                    <option value="intCountryID"> Niue</option>
               
                    <option value="intCountryID"> Norfolk Island</option>
               
                    <option value="intCountryID"> Northern Mariana 
Islands</option>
               
                    <option value="intCountryID"> Norway</option>
               
                    <option value="intCountryID"> Oman</option>
               
                    <option value="intCountryID"> Pakistan</option>
               
                    <option value="intCountryID"> Palau</option>
               
                    <option value="intCountryID"> Palmyra Atoll</option>
               
                    <option value="intCountryID"> Panama</option>
               
                    <option value="intCountryID"> Papua New Guinea</option>
               
                    <option value="intCountryID"> Paracel Islands</option>
               
                    <option value="intCountryID"> Paraguay</option>
               
                    <option value="intCountryID"> Peru</option>
               
                    <option value="intCountryID"> Philippines</option>
               
                    <option value="intCountryID"> Pitcairn Islands</option>
               
                    <option value="intCountryID"> Poland</option>
               
                    <option value="intCountryID"> Portugal</option>
               
                    <option value="intCountryID"> Puerto Rico</option>
               
                    <option value="intCountryID"> Qatar</option>
               
                    <option value="intCountryID"> Republic of the 
Congo</option>
               
                    <option value="intCountryID"> Reunion</option>
               
                    <option value="intCountryID"> Romania</option>
               
                    <option value="intCountryID"> Russia</option>
               
                    <option value="intCountryID"> Rwanda</option>
               
                    <option value="intCountryID"> Saint Helena</option>
               
                    <option value="intCountryID"> Saint Kitts and 
Nevis</option>
               
                    <option value="intCountryID"> Saint Lucia</option>
               
                    <option value="intCountryID"> Saint Pierre and 
Miquelon</option>
               
                    <option value="intCountryID"> Saint Vincent and the 
Grenadines</option>
               
                    <option value="intCountryID"> Samoa</option>
               
                    <option value="intCountryID"> San Marino</option>
               
                    <option value="intCountryID"> Sao Tome and 
Principe</option>
               
                    <option value="intCountryID"> Saudi Arabia</option>
               
                    <option value="intCountryID"> Senegal</option>
               
                    <option value="intCountryID"> Serbia and 
Montenegro</option>
               
                    <option value="intCountryID"> Seychelles</option>
               
                    <option value="intCountryID"> Sierra Leone</option>
               
                    <option value="intCountryID"> Singapore</option>
               
                    <option value="intCountryID"> Slovakia</option>
               
                    <option value="intCountryID"> Slovenia</option>
               
                    <option value="intCountryID"> Solomon Islands</option>
               
                    <option value="intCountryID"> Somalia</option>
               
                    <option value="intCountryID"> South Africa</option>
               
                    <option value="intCountryID"> South Georgia and the 
South Sandwich Islands</option>
               
                    <option value="intCountryID"> South Korea</option>
               
                    <option value="intCountryID"> Spain</option>
               
                    <option value="intCountryID"> Spratly Islands</option>
               
                    <option value="intCountryID"> Sri Lanka</option>
               
                    <option value="intCountryID"> Suriname</option>
               
                    <option value="intCountryID"> Svalbard</option>
               
                    <option value="intCountryID"> Swaziland</option>
               
                    <option value="intCountryID"> Sweden</option>
               
                    <option value="intCountryID"> Switzerland</option>
               
                    <option value="intCountryID"> Syria</option>
               
                    <option value="intCountryID"> Taiwan</option>
               
                    <option value="intCountryID"> Tajikistan</option>
               
                    <option value="intCountryID"> Tanzania</option>
               
                    <option value="intCountryID"> Thailand</option>
               
                    <option value="intCountryID"> The Bahamas</option>
               
                    <option value="intCountryID"> The Former Yugoslav 
Republic of Macedonia</option>
               
                    <option value="intCountryID"> The Gambia</option>
               
                    <option value="intCountryID"> Togo</option>
               
                    <option value="intCountryID"> Tokelau</option>
               
                    <option value="intCountryID"> Tonga</option>
               
                    <option value="intCountryID"> Trinidad and 
Tobago</option>
               
                    <option value="intCountryID"> Tromelin Island</option>
               
                    <option value="intCountryID"> Tunisia</option>
               
                    <option value="intCountryID"> Turkey</option>
               
                    <option value="intCountryID"> Turkmenistan</option>
               
                    <option value="intCountryID"> Turks and Caicos 
Islands</option>
               
                    <option value="intCountryID"> Tuvalu</option>
               
                    <option value="intCountryID"> Uganda</option>
               
                    <option value="intCountryID"> Ukraine</option>
               
                    <option value="intCountryID"> United Arab 
Emirates</option>
               
                    <option value="intCountryID"> United Kingdom</option>
               
                    <option value="intCountryID"> United States</option>
               
                    <option value="intCountryID"> Uruguay</option>
               
                    <option value="intCountryID"> Uzbekistan</option>
               
                    <option value="intCountryID"> Vanuatu</option>
               
                    <option value="intCountryID"> Venezuela</option>
               
                    <option value="intCountryID"> Vietnam</option>
               
                    <option value="intCountryID"> Virgin Islands</option>
               
                    <option value="intCountryID"> Wake Island</option>
               
                    <option value="intCountryID"> Wallis and Futuna</option>
               
                    <option value="intCountryID"> West Bank</option>
               
                    <option value="intCountryID"> Western Sahara</option>
               
                    <option value="intCountryID"> World</option>
               
                    <option value="intCountryID"> Yemen</option>
               
                    <option value="intCountryID"> Zaire</option>
               
                    <option value="intCountryID"> Zambia</option>
               
                    <option value="intCountryID"> Zimbabwe</option>
               
                    <option value="intCountryID">Bermuda</option>
               
                    <option value="intCountryID">British Virgin 
Islands</option>
               
                    <option value="intCountryID">Jamaica</option>
               
                    <option value="intCountryID">Mexico</option>
               
                    <option value="intCountryID">Puerto Rico</option>
               
                    <option value="intCountryID">Scotland</option>
               
                    <option value="intCountryID">The Bahamas</option>
               
                    <option value="intCountryID">Vietnam</option>
               
                    <option value="intCountryID">Virgin Islands</option>
               
            </select>
        </td>
    </tr>
    <tr>
        <td class="clsFieldName" align="right">
            Phone:&nbsp;
        </td>
        <td>
            <input type="Text" name="phone" size="12" maxlength="25" 
class="clsBoxes" />&nbsp;<span 
class="clsFieldName">Fax:</span>&nbsp;<input type="Text" name="fax" 
size="12" maxlength="25" class="clsBoxes" />
        </td>
    </tr>
    <tr>
        <td class="clsFieldName" align="right">
            E-Mail:&nbsp;
        </td>
        <td>
            <input type="Text" name="email" size="47" maxlength="110" 
class="clsBoxes" />
        </td>
    </tr>
</table>
 </div>
  <div align="center">
      <table border="0" cellpadding="2" cellspacing="0" width="450">
        <tr>
            <td class="clsFieldName">
                Enter Applications, Custom Requirements, and additional 
questions or comments below:
            </td>
        </tr>
        <tr>
            <td>
                <textarea name="comment" rows="3" cols="50" 
class="clsBoxes"></textarea>
            </td>
        </tr>
    </table>
  </div>
 
  <div align="center">
    <input NAME="SUBMIT" TYPE="submit" VALUE="Submit" class="clsButtons">
</div>
</form>

Peter Brunone wrote:

>What does it do when it chokes?  Any error message?  Where do you call it, and can we see the form you're using as well?
>
>-Peter
>
>---------- Original Message ----------------------------------
>From: "Cutter (JavaScript)" <javascript at theblades-family.com>
>Reply-To: javascript at LaTech.edu
>Date: Wed, 29 Jan 2003 14:07:19 -0500
>
>  
>
>>I've created a form validation script, but for some reason it keeps 
>>choking after it does the 8th field the second time around. Anyone???
>>
>>var fieldnames = new Array();
>>var Item = new Array();
>>fieldnames[0] = (Item =['name','text','Please supply your Name',0,0]);
>>fieldnames[1] = (Item = ['title','text','Please supply your Title',0,0]);
>>fieldnames[2] = (Item = ['company','text','Please supply your Company 
>>name',0,0]);
>>fieldnames[3] = (Item = ['address','text','Please supply your 
>>Address',0,0]);
>>fieldnames[4] = (Item = ['city','text','Please supply your City',0,0]);
>>fieldnames[5] = (Item = ['country','select','Please supply your 
>>Country',0,0]);
>>fieldnames[6] = (Item = ['state_province','select','Please supply your 
>>State or province',0,0]);
>>fieldnames[7] = (Item = ['zip_or_country_code','text','Please supply 
>>your Zip or Country Code',0,0]);
>>fieldnames[8] = (Item = ['phone','text','Please supply your Phone 
>>number',1,0]);
>>fieldnames[9] = (Item = ['fax','text','Please supply your Fax number',1,0]);
>>fieldnames[10] = (Item = ['email','text','You must enter a valid Email 
>>address',1,1]);
>>
>>function isEmpty(form, field)
>>{
>>
>>   fn = getField(field);
>>   tp = getType(field);
>>   result = false;
>>  
>>  
>>   if(tp == 'text')
>>   {
>>  
>>       strValue = "form." + fn + ".value";
>>  
>>   }
>>  
>>   if(tp == 'select')
>>   {
>>  
>>       strValue = "form." + fn + ".options[form." + fn + 
>>".selectedIndex].value";
>>  
>>   }
>>  
>>   if ((eval(strValue) == null) || (eval(strValue) == ''))
>>       result = true;
>>      
>>   return result;
>>
>>}
>>
>>function getField(field)
>>{
>>
>>   Item = field;
>>   return Item[0];
>>
>>}
>>
>>function getType(field)
>>{
>>
>>   Item = field;
>>   return Item[1];
>>  
>>}
>>
>>function getError(field)
>>{
>>
>>   Item = field;
>>   return Item[2];
>>
>>}
>>
>>function blValChar(field)
>>{
>>
>>   Item = field;
>>   return Item[3];
>>
>>}
>>
>>function blValMail(field)
>>{
>>
>>   Item = field;
>>   return Item[4];
>>
>>}
>>
>>function showError(field, form)
>>{
>>
>>   alert(getError(field));
>>   a = "form." + getField(field);
>>   eval(a).focus();
>>   if(getType(field) == 'text')
>>       eval(a).select();
>>
>>}
>>
>>function charCheck(field, form)
>>{
>>
>>   result = true;
>>   var arrBadChars = new 
>>Array("~","`","!","@","#","$","%","%","^","&","*","(",")","_","=",":",";","'","<",">",".","?","/");
>>   strField = "form." + getField(field);
>>   a = eval(strField).value;
>>  
>>   for (i = 0; i < arrBadChars.length; i++)
>>   {
>>  
>>       if (a.indexOf(arrBadChars[i]) != '-1')
>>       {
>>          
>>           alert('Please do not enter any illegal characters');
>>           eval(strField).focus();
>>           eval(strField).select();
>>           result = false;
>>           return result;
>>          
>>       }
>>      
>>   }
>>  
>>   return result;
>>
>>}
>>
>>function chkMail(field, form)
>>{
>>
>>   re= /^\w+([\.-]?\w)*@\w+([\.]?\w+)*(\.\w{2,4})+$/; // RegEx for 
>>testing email
>>   result = true;
>>   strField = "form." + getField(field);
>>   strValue = eval(strField).value;
>>  
>>   if(!re.test(strValue))
>>       result = false;
>>  
>>   return result;
>>
>>}
>>
>>function valForm(form)
>>{
>>
>>   for( i = 0; i < fieldnames.length; i++ )
>>   {
>>  
>>       alert("Field " + i + " " + getField(fieldnames[i]));
>>      
>>       if(isEmpty(form,fieldnames[i]))
>>       {
>>      
>>           showError(fieldnames[i],form);
>>           return false;
>>      
>>       }
>>      
>>       if(blValChar(fieldnames[i]))
>>       {
>>      
>>           if(!charCheck(fieldnames[i], form))
>>               return false;
>>              
>>       }
>>      
>>       if(blValMail(fieldnames[i]))
>>       {
>>      
>>           if(!chkMail(fieldnames[i]))
>>               return false;
>>      
>>       }
>>      
>>   }
>>  
>>   return true;
>>
>>}
>>
>>_______________________________________________
>>Javascript mailing list
>>Javascript at LaTech.edu
>>https://lists.LaTech.edu/mailman/listinfo/javascript
>>
>>    
>>
>_______________________________________________
>Javascript mailing list
>Javascript at LaTech.edu
>https://lists.LaTech.edu/mailman/listinfo/javascript
>  
>






More information about the Javascript mailing list