Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Aug 1st, 2012  |  syntax: None  |  size: 1.30 KB  |  hits: 8  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. Client side XMLHttpRequest issues
  2. function validateEmail() {
  3.  
  4. var email = document.forms["feedback"]["email"].value;
  5. var atpos = email.indexOf("@");
  6. var dotpos  = email.lastIndexOf(".");
  7. var url = "ajaxtest.xml";
  8.  
  9.  
  10. // validates the format of the email address
  11.     if (atpos < 1 ||
  12.     dotpos < atpos + 2 ||
  13.     dotpos + 2 >= email.length){
  14.  
  15.     document.getElementById('emailmsg').innerHTML = "Gotta get this right!";
  16.     document.forms["feedback"]["email"].focus();
  17.     return false;
  18.     } else {
  19.     getXML(url)  
  20.     }
  21. }
  22. function getXML(url)  {
  23.  
  24.     try {
  25. var request = new XMLHttpRequest();
  26.  
  27.     request.onreadystatechange = processRequest();
  28.     request.open('GET', url, true);
  29.     request.send(null);
  30.  
  31. }
  32. catch ( e )
  33.     {
  34.     alert( 'Request Failed' );
  35.     }
  36. }
  37. function processRequest() {
  38.  
  39.     if (request.readyState == 4 && request.status == 200) {
  40.  
  41.     var XMLobject = request.responseXML;
  42. var emails = XMLobject.getElementsByTagName("email");
  43.  
  44.   for (var i = 0; i < emails.length; i++)  {
  45.  
  46.       var badEmails = emails.item( i );
  47.       var badEmail = badEmails.value;
  48.  
  49.         if (badEmail == email) {
  50.  
  51.         document.getElementById('emailmsg').innerHTML = "You are a bad man!";
  52.         } else  {
  53.         alert("not on the naughty list");
  54.         }
  55.       }
  56.     }
  57. }
  58.        
  59. request.onreadystatechange = processRequest;