Hi,

I would like to check if a person has filled out the email textbox and if not then alert a message and allow them to input their email address but the form sends anyway?!

html
Code:
<form name="vote-form" action="javascript:return submit_vote(document.getElementById(\'vote-form\'));" id="vote-form" method="post">
            <b style="font-size:13px;">'.$question.'</b>
			<ol id="poll-options">'.$options.'
			</ol>
			Email address:<br /><input type="text" name="emailaddress" id="emailaddress" /><br /><br />
			Renewal Date:<br /><input type="text" tabindex="1" class="date demo" name="renewaldate" id="renewaldate" readonly=""><br /><br />
			&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="submit" name="vote" onclick=\'return notEmpty()\' id="vote" value="Submit Vote" />
			</form>

JS
Code:
<script>
window.addEvent('load', function() {
	new DatePicker('.demo', { positionOffset: { x: 0, y: 5 }});
});
 //VOTE POLL -------------------------------------
    function makeVote(url, parameters) {
      http_request = false;
      if (window.XMLHttpRequest) { // Mozilla, Safari,
         http_request = new XMLHttpRequest();
         if (http_request.overrideMimeType) {
         	// set type accordingly to anticipated content type
            //http_request.overrideMimeType('text/xml');
            http_request.overrideMimeType('text/html');
         }
      } else if (window.ActiveXObject) { // IE
         try {
            http_request = new ActiveXObject("Msxml2.XMLHTTP");
         } catch (e) {
            try {
               http_request = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
         }
      }
      if (!http_request) {
         alert('Cannot create XMLHTTP instance');
         return false;
      }
      
      http_request.onreadystatechange = alertVote;
      http_request.open('POST', url, true);
      http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
      http_request.setRequestHeader("Content-length", parameters.length);
      http_request.setRequestHeader("Connection", "close");
      http_request.send(parameters);
   }

   function alertVote() {
      if (http_request.readyState == 4) {
         if (http_request.status == 200) {
            //alert(http_request.responseText);
            result = http_request.responseText;
            document.getElementById('vote_msg').innerHTML = result;            
         } else {
            alert('There was a problem with the request.');
         }
      }
   }
   

function getCheckedValue(radioObj) {
	if(!radioObj)
		return "";
	var radioLength = radioObj.length;
	if(radioLength == undefined)
		if(radioObj.checked)
			return radioObj.value;
		else
			return "";
	for(var i = 0; i < radioLength; i++) {
		if(radioObj[i].checked) {
			return radioObj[i].value;
		}
	}
	return "";
}
function notEmpty(){
	var myTextField = document.getElementById('emailaddress');
	if(myTextField.value == "")
		alert("Please enter a valid email address");
}

   function submit_vote(obj) {
   	  
	  var vote_value = getCheckedValue(document.forms['vote-form'].elements['opt']);
      var poststr = "poll_id=" + encodeURI( document.getElementById("poll_id").value ) +
      				"&emailaddress=" + encodeURI( document.getElementById("emailaddress").value ) +
      				"&renewaldate=" + encodeURI( document.getElementById("renewaldate").value ) +
                    "&voteid=" + encodeURI( vote_value);				
      makeVote('wp-content/themes/boat-zone/vote.php', poststr);	
   }
</script>