[ajax] aggiornare immagine captcha

Stato
Discussione chiusa ad ulteriori risposte.

black_devil

Utente Silver
10 Giugno 2007
75
13
3
76
Io ho una pagina php in cui genero un captcha.
La pagina php si chiama "captcha_image.php".
Io la richiamo nel codice html della pagina tramite queste righe:
Codice:
<div id="captcha_div">
     <img src="captcha_image.php" alt="" id ="captcha" onClick="reload_captcha()"/>
</div>

Come potete vedere, all'evento del click del mouse sull'immagine vorrei che questa immagine si ricaricasse.
La funzione è questa:
Codice:
function reload_captcha()
{
    var ajax = null;
    var img = null;

    ajax = createXMLHttpObject();
    img = document.getElementById("captcha");

    ajax.open("GET",img.src+"?"+Math.random(),true);
    ajax.onreadystatechange = function ()
    {
        if(ajax.readystate == 4)
        {
            document.getElementById("captcha_div").innerHTML = ajax.responseText;
            img.src = img.src +"?"+Math.random();
        }
    }
    ajax.send(null);
}
createXMLHttpObject(); fa il suo lavoro.
Usando firebug vedo che la risposta c'è.
Ovvero tutta la serie di caratteri incomprensibili appare (dato che è un immagine) nel campo di risposta.

Dunque cos'è che non faccio correttamente?
 
WTF? Puoi fare in un metodo molto piu' semplice caro..
Codice:
function reload_captcha () {
    document.getElementById("captcha").src = "captcha_image.php?" + Math.random();
}
 
Stato
Discussione chiusa ad ulteriori risposte.