Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    35

    Problemi xmlHttp.readyState

    Salve, sto iniziando a programmare in AJAX, studio tramite libri e tutorial online, ma a volte riscontro dei problemi che non riesco a capire il perchè, come ad esempio quello che propongo a continuazione:

    Il mio script è:

    var xmlHttp
    function GetXmlHttpObject(){
    var xmlHttp=null;
    try{
    // Firefox, Opera 8.0+, Safari
    xmlHttp=new XMLHttpRequest();
    }
    catch (e){
    // Internet Explorer
    try{
    xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch (e){
    xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    }
    return xmlHttp;
    }

    function mod_attrattiva(intero){
    if (intero.length==0){
    document.getElementById("select2_mondo").innerHTML ="";
    return;
    }
    xmlHttp=GetXmlHttpObject()
    if (xmlHttp==null){
    alert ("Your browser does not support AJAX!");
    return;
    }
    document.getElementById("mod_attrattiva"+intero).i nnerHTML= "<img src=\"loader_ajax_bianco.gif\" align=\"center\">"
    var url="das_ajax.asp";
    url=url+"?id_das="+intero;
    xmlHttp.open("GET",url,true);
    xmlHttp.send(null);
    xmlHttp.onreadystatechange=stateChanged(intero);
    }

    function stateChanged(intero){

    if (xmlHttp.readyState==4){
    document.getElementById("mod_attrattiva"+intero).i nnerHTML=xmlHttp.responseText;
    }
    }

    Nella funzione stateChanged subito dopo le parentesi grafe, se metto un Alert funziona, altrimenti no... e poi quando voglio stampare il valore di xmlHttp.readyState è 1... come funziona di preciso readyState? perchè con un semplice alert questo problema si risolve?? (anche se non lo dovrei stampare affatto un alert... quindi è da trovare un'altra soluzione...9

    e più che altro, che c'è di sbagliato nel codice?

    Grazie mille e saluti a tutti.

  2. #2
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    a occhio vedo un errore qui

    xmlHttp.onreadystatechange=stateChanged(intero);


    deve diventare

    xmlHttp.onreadystatechange= function() {
    stateChanged(intero);
    }
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    35
    Perfetto, funziona... ho ancora qualche problema, se non trovo niente penso di postare.. ajax è veramente eccezionale, ma certe cose non riesco proprio a capirle...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.