Instantly share code, notes, and snippets.
Created
March 14, 2018 18:40
-
Star
(0)
0
You must be signed in to star a gist -
Fork
(0)
0
You must be signed in to fork a gist
-
Save gabemartinez/f51efe6374c57dcc0e9093e22e64f286 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<script type="text/javascript"> | |
<!-- | |
// isEmail (STRING s [, BOOLEAN emptyOK]) | |
// whitespace characters | |
var whitespace = " \t\n\r"; | |
// | |
// Email address must be of form a@b.c ... in other words: | |
// * there must be at least one character before the @ | |
// * there must be at least one character before and after the . | |
// * the characters @ and . are both required | |
function isValidEmail(s) | |
{ | |
if (isEmpty(s)) return false; | |
// is s whitespace? | |
if (isWhitespace(s)) return false; | |
// there must be >= 1 character before @, so we | |
// start looking at character position 1 | |
// (i.e. second character) | |
var i = 1; | |
var sLength = s.length; | |
// look for @ | |
while ((i < sLength) && (s.charAt(i) != "@")) | |
{ i++ | |
} | |
if ((i >= sLength) || (s.charAt(i) != "@")) return false; | |
else i += 2; | |
// look for . | |
while ((i < sLength) && (s.charAt(i) != ".")) | |
{ i++ | |
} | |
// there must be at least one character after the . | |
if ((i >= sLength - 1) || (s.charAt(i) != ".")) return false; | |
else return true; | |
} | |
// Check whether string s is empty. | |
function isEmpty(s) | |
{ | |
return ((s == null) || (s.length == 0)) | |
} | |
// Returns true if string s is empty or | |
// whitespace characters only. | |
function isWhitespace(s) | |
{ | |
var i; | |
// Is s empty? | |
if (isEmpty(s)) return true; | |
// Search through string's characters one by one | |
// until we find a non-whitespace character. | |
// When we do, return false; if we don't, return true. | |
for (i = 0; i < s.length; i++) | |
{ | |
// Check that current character isn't whitespace. | |
var c = s.charAt(i); | |
if (whitespace.indexOf(c) == -1) return false; | |
} | |
// All characters are whitespace. | |
return true; | |
} | |
function checkForm() { | |
if (!isValidEmail(document.subscribeForm.elements['Email Address'].value)) { | |
document.subscribeForm.elements['Email Address'].style.backgroundColor='yellow'; | |
alert("Please enter a valid Email Address. (name@host.com)"); | |
document.subscribeForm.elements['Email Address'].focus(); | |
return false; | |
} | |
} | |
//--> | |
</script> | |
<form action="http://cl.exct.net/DEManager.aspx" name="subscribeForm" method="post" onSubmit="return checkForm();"> | |
<input type="hidden" name="_clientID" value="7201485" /> | |
<input type="hidden" name="_deExternalKey" value="B7B20446-7AE9-4C70-AD7B-24F4FC00B1BC" /> | |
<input type="hidden" name="_action" value="add" /> | |
<input type="hidden" name="_returnXML" value="0" /> | |
<input type="hidden" name="_successURL" value="https://clas.asu.edu/manage-subscriptions-success" /> | |
<input type="hidden" name="_errorURL" value="https://clas.asu.edu/manage-subscriptions-error" /> | |
<div class="row"> | |
<div class="col-md-6"> | |
<h2>Your Information</h2> | |
<div class="form-group"> | |
<label for="firstNameInput">First Name</label> | |
<input class="form-control" id="firstNameInput" placeholder="First Name" name="First Name"> | |
</div> | |
<div class="form-group"> | |
<label for="lastNameInput">Last Name</label> | |
<input class="form-control" id="lastNameInput" placeholder="Last Name" name="Last Name"> | |
</div> | |
<div class="form-group"> | |
<label for="emailAddressInput">Email Address</label> | |
<input type="email" class="form-control" id="emailAddressInput" placeholder="Email Address" name="Email Address"> | |
</div> | |
</div> | |
</div> | |
<div class="row"> | |
<div class="col-md-6"> | |
<button type="submit" class="form-submit btn btn-primary">Submit</button> | |
</div> | |
</div> | |
</form> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment