Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di abellos
    Registrato dal
    Feb 2002
    Messaggi
    434

    Temporizzatore con setinterval

    Ciao a tutti, ho realizzato un semplice script che mi aggiorna con ajax il contenuto di un div. L'aggiornamento parte in automatico e con il pulsante ferma aggiornamento lo fermo, il problema e' che non so come farlo ripartire.
    La pagina padre e' questa default.asp
    codice:
    <html>
    <head>
    <script language="JavaScript" src="jquery-1.4.2.min.js" type="text/javascript"></script>
    <script language="JavaScript" type="text/javascript">
    <!--
    $(document).ready(function()
     { 
    	
     
    	$('#startTimer').click(function() {
    		aggiornaRichieste();
    		//var Timer = setInterval("aggiornaRichieste()",4000);
    	});
    	
    	$('#stopTimer').click(function() {
    		clearInterval(Timer);
    	});
       	 
    	var Timer = setInterval("aggiornaRichieste()",4000);
    
    	//setInterval("aggiornaRichieste()",4000);
    });
    
    function aggiornaRichieste(){
       $("#richieste").fadeIn(350).html("<center>Operazione in corso attendere prego...</center>")
       var dataOra = new Date();
    	$.ajax({	 
    		
    		type: "GET",
    		url: "dacaricare.asp",
    		data: "ciao=aaaaaaaaaaaaa&ora="+dataOra,
    		dataType: "html",
    		success: function(msg){
    			$("#richieste").html(msg);
    		},
    		error: function(){
    			//alert("Chiamata fallita!!!");
    			$("#richieste").html("Si e' verificato un errore, chiamata Ajax fallita!!!");
    		}
    	});
    }
    -->
    </script>
    
    </head>
    
    <body>
    <input type="button" id="startTimer" value="aggiorna il div sotto">
    <input type="button" id="stopTimer" value="ferma aggiornamento">
    
    
    
    <div id="richieste" style="border-style:solid;border-width:1px;">
    nessuna richiesta
    </div>
    </body>
    </html>
    la pagina che mi aggiorna il contenuto del div dacaricare.asp, e' solo un test che mi genera un numero casuale e la data attuale
    codice:
    <%
    Response.ExpiresAbsolute = now()-2
    Response.Addheader "pragma","no-cache"
    Response.Addheader "cache-control","private"
    Response.Cachecontrol="no-cache"
    
    
    Limite = 10000
    
    Randomize()
    
    Response.Write CInt((Limite - 1)*Rnd() + 1 )
    
    response.write "
    "& now & "
    "
    
    tipo = request("ciao")
    
    response.write "
    "& tipo
    
    %>
    ho provato ad inserire la variabile timer anche sul click del pulsante per aggiornare manualmente il div ma cosi facendo mi crea un doppio aggiornamento del div che non rispetta il tempo in millisecondi che ho impostato, nell'esempio e' impostato su 4 secondi ma dovro usare un tempo di aggiornamento che sara' dai 2 ai 5 minuti. qualcuno mi sa aiutare? la pagina pubblica e' qui http://users8.jabry.com/abellos/ajax/
    Da un grande potere derivano grandi responsabilità

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    74
    Prova ad usare la funzione in questo modo, ho imposto alcuni vincoli così non dovresti avere doppi timer o altri problemi:
    Codice PHP:
    $(document).ready(function()
                { 
                    var 
    Timer undefined;
     
                    $(
    '#startTimer').click(function() {
                        if (
    Timer == null){
                            
    Timer setInterval("aggiornaRichieste()",4000);
                        }
                    });
        
                    $(
    '#stopTimer').click(function() {
                        if (
    Timer != null && Timer != undefined){
                            
    clearInterval(Timer);
                            
    Timer null;
                        }
                    });
            
                    
    Timer setInterval("aggiornaRichieste()",4000);
                }); 
    ..
    "Voi che avete gl'intelletti sani,mirate la dottrimna che s'asconde dietro il velame delli versi strani".

  3. #3
    Utente di HTML.it L'avatar di abellos
    Registrato dal
    Feb 2002
    Messaggi
    434
    Perfetto!! grazie era proprio quello che mi serviva!!!!
    Da un grande potere derivano grandi responsabilità

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 © 2026 vBulletin Solutions, Inc. All rights reserved.