Sto impazzendo, nel form richiamo NomeValidation, CognomeValidation e UsernameValidation in modo da passare via get i valori della input ad una pagina php e stampare il risultato nel div risultato...

Ecco il form:
codice:
<form name="registrazione_utenti" method="post" action="register.php">
  <fieldset>
    <legend>Registrazione</legend>
      <div><label for="nome">Nome</label> <input id="nome" name="nome" onKeyUp="NomeValidation();" value="">
        <div id="risultato_nome"></div>
      </div>
      <div><label for="cognome">Cognome</label> <input id="cognome" name="cognome" onKeyUp="CognomeValidation();" value="">
        <div id="risultato_cognome"></div>
      </div>
      <div><label for="username">Username</label> <input id="username" name="username" onKeyUp="UsernameValidation();" value="">
        <div id="risultato_username"></div>
      </div>
</form>
Quando però richiamo le funzioni le prime 2 funzionano, la terza si comporta come se avessi chiamato ValidationCognome, perché?

Ecco il javascript:
codice:
var xmlHttp;

function createXMLHttpRequest() {
    if (window.ActiveXObject) {
        xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
    } 
    else if (window.XMLHttpRequest) {
        xmlHttp = new XMLHttpRequest();
    }
}
    
function createQueryString(variabile) {
    var valore = document.getElementById(""+ variabile + "").value;
        
    var queryString = "mode=" +variabile + "&value=" + valore;
    
    return queryString;
}

//validazione del nome
function NomeValidation() {
    createXMLHttpRequest();
    
    var queryString = "validate_register.php?";
    queryString = queryString + createQueryString("nome") 
        + "&timeStamp=" + new Date().getTime();
    xmlHttp.onreadystatechange = handleStateChangeNome;
    xmlHttp.open("GET", queryString, true);
    xmlHttp.send(null);
}
    
function handleStateChangeNome() {
    if(xmlHttp.readyState == 4) {
        if(xmlHttp.status == 200) {
            parseResults("nome");
        }
    }
}

//validazione del cognome
function CognomeValidation() {
    createXMLHttpRequest();
    
    var queryString = "validate_register.php?";
    queryString = queryString + createQueryString("cognome") 
        + "&timeStamp=" + new Date().getTime();
    xmlHttp.onreadystatechange = handleStateChangeCognome;
    xmlHttp.open("GET", queryString, true);
    xmlHttp.send(null);
}
    
function handleStateChangeCognome() {
    if(xmlHttp.readyState == 4) {
        if(xmlHttp.status == 200) {
            parseResults("cognome");
        }
    }
}

//validazione dello username
function UsernameValidation() {
    createXMLHttpRequest();
    
    var queryString = "validate_register.php?";
    queryString = queryString + createQueryString("username") 
        + "&timeStamp=" + new Date().getTime();
    xmlHttp.onreadystatechange = handleStateChangeUsername;
    xmlHttp.open("GET", queryString, true);
    xmlHttp.send(null);
}
    
function handleStateChangeUsername() {
    if(xmlHttp.readyState == 4) {
        if(xmlHttp.status == 200) {
            parseResults("username");
        }
    }
}

function parseResults(variabile) {
    var responseDiv = document.getElementById("risultato_" + variabile + "");
    if(responseDiv.hasChildNodes()) {
        responseDiv.removeChild(responseDiv.childNodes[0]);
    }
    
    var responseText = document.createTextNode(xmlHttp.responseText);
    responseDiv.appendChild(responseText);
}
AIUTO!