• Super User

    XMLHttpRequest

    Salve,

    ho dei problemi con la variabile XMLHttpRequest. Sto facendo dei test in firefox 3.0. Ho una pagina che richiama più volte una funzione di questo tipo:

    
    //id dell'elemento da salvare
    
    var elid;
    function myfun() {
         var somearray = ...;
         for (i = 0; i < somearray .length; i++) {
    	var xmlHttp = null;
    	try
    	{
    		// Firefox, Opera 8.0+, Safari
    		xmlHttp=new XMLHttpRequest();
    	}
    	catch (e)
    	{
    		// Internet Explorer
    		try
    		{
    			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    		}
    		catch (e)
    		{
    			try
    			{
    				xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    			}
    			catch (e)
    			{
    				alert("Your browser does not support AJAX!");
    				return false;
    			}
    		}
    	}
    	xmlHttp.onreadystatechange=function()
    	{
    		if(xmlHttp.readyState==4)
    		{
    			if(xmlHttp.status == 200) {
    				var el = document.getElementById(elid);
    				if(el!= null) {
    					el.innerHTML = xmlHttp.responseText;
    				}
    			}
    		}
    	}
    	elid = somearray*.id;
    	xmlHttp.open("GET",nomepagina.php?id=123,true);
    	xmlHttp.send(null);
    }
    
    

    Sembra che questo codice funzioni solo per la prima volta. Ora come detto, nel codice html io richiamo alla pressione di un pulsante questa funzione, possibile che e variabili xmlHttp vengano sovrascritte o roba del genere? Facendo il print di elid ottengo i valori giusti, mentre facendo il print di xmlHttp.responseText ottengo la prima volta i valori giusti, il resto niente.