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

    [Ajax] Impossibile cambiare gli attributi di un'immagine!

    Data la seguente procedura:
    Codice PHP:
    [img]/images/wait.gif[/img]
    [...]

    function 
    updateEd2kLink(form){
                   
            var 
    query form.action.value;        
            
    document.getElementById('loader').style.display '';
            
    http createRequestObject();
            
            
    http.open('get''esearch.php?q=' query);
            
    http.onreadystatechange = function () {
                    if(
    http.readyState == 4){
                      var 
    response http.responseText
                      
    document.getElementById('link_list').innerHTML response;
                    }}
            
    http.send(null);
            
    document.getElementById('loader').style.display 'none';

    Come vedete nel codice cerco di cambiare l'attributo display di un'immagine (una di quelle barre tanto carine durante i caricamenti). Il problema è che invece di cambiare subito l'attributo, il codice lo cambia solo alla fine della richiesta (basta togliere l'ultimo "display:none") rendendo inutile la mia barra per il caricamento. Se ovviamente lascio l'ultimo display:none la modifica neanche si vede, in quanto viene subito nascosta.
    Inoltre poi, mentre carica la pagina sembra "bloccata", come quando un'applicazione non risponde. Si può ovviare a ciò?
    Grazie, saluti

  2. #2
    codice:
    [img]/images/wait.gif[/img]
    [...]
    
    function updateEd2kLink(form){
                   
            var query = form.action.value;        
            document.getElementById('loader').style.display = '';
            http = createRequestObject();
            
            http.open('get', 'esearch.php?q=' + query);
            http.onreadystatechange = function () {
                    if(http.readyState == 4){
                     document.getElementById('loader').style.display = 'none';
                      var response = http.responseText;
                      document.getElementById('link_list').innerHTML = response;
                    }}
            http.send(null);
    
    }

    Per quanto riguarda il fatto che ti si blocca tutto, mostraci la funzione ajax che usi.

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    3
    http.open('get', 'esearch.php?q=' + query);
    In questa parte qui "esearch.php" fa dei post su delle pagine e con delle regex crea l'output, quindi è naturale che ci metta del tempo. Volevo sapere se c'è un modo in modo che l'applicazione (e anche firefox!) rispondano nel frattempo.
    Ma il primo problema è quello principale...
    Saluti

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.