1) It would help if you used a complete form. Where are you LABEL, FIELDSET, FOR attributes, and ID's?
2) Might also help to NOT use the decade out of date nyetscape 4 style array indexing of fields.
3) If you are going to perform the same operation over and over, put it in a bloody function.
4) assuming the element exists, it should NEVER return null. There's no reason to check that.
5) might be more useful to mark the invalid fields with a class and add the error message to the markup instead of using an alert.
6) Just let people type in the bloody state. Selects of anything more than 12 OPTION is annoying crap.
7) don't waste time server-side sending the full state name...
8) It's better for the scripting to hook the form instead of the other way around -- it's why I say the various onevent attributes in HTML like onsubmit should be removed from the specification.
So first, let's drag your markup kicking and screaming into being a properly built form:
<form action="#" id="registerForm" method="post">
<label for="register_firstName">First name:</label>
<label for="register_lastName">Last Name:</label>
<label for="register_address1">Address Line 1:</label>
<label for="register_address2">Address Line 2:</label>
<label for="register_zip">Zip Code:</label>
<input type="submit" value="Submit" />
I always put submits and hiddens in a DIV instead of a fieldset since they're not user input elements -- and as such aren't true "fields" -- a VALID form has a block level container or two between the FORM and the INPUT, since INPUT are NOT valid children of FORM.
See 'contents' for 'strict'. You're not supposed to be putting INPUT inside FORM without another wrapper in there -- like FIELDSET. (hell, it's why FIELDSET EXISTS!!!) -- same goes for not using label tags. It's just inaccessible crap without them.
Now, as to the scripting, gimme a while and I'll belt out something far, FAR more effective. Those classes I added with the v_ are there for the script to just go through the elements and add the appropriate classes, warnings and validations.