[Jquery] Dubbio sul tag meta refresh aggiunto dinamicamente

felino

Utente Attivo
12 Dic 2013
940
10
18
Aci Catena (Catania)
Salve a tutti,
vorrei aggiungere dimenticante il tag meta
Codice:
<meta http-equiv="refresh" content="30">

Il tempo deve essere espresso in secondi, in questo caso parliamo di 30 secondi, esatto?

Il tag viene aggiunto dimenticamene secondo il valore di un checkbox:
Codice:
$('head').append('<meta http-equiv="refresh" content="30">');

e rimosso con
Codice:
$('meta[http-equiv="refresh"]').remove();

Adesso mi chiedo: l'inserimento del TAG in maniera dinamica, viene elaborato subito dalla pagina oppure no?

Grazie.
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Ciao,
Adesso mi chiedo: l'inserimento del TAG in maniera dinamica, viene elaborato subito dalla pagina oppure no?
dipende: se scrivi così
HTML:
<head>
    <script>
        $('head').append('<meta http-equiv="refresh" content="30">');
    </script>
dovrebbe eseguirlo subito.
Scrivendo invece in questo modo attende il caricamento della pagina e poi esegue
HTML:
<head>
    <script>
        $(document).ready(function(){
            $('head').append('<meta http-equiv="refresh" content="30">');
        });        
    </script>
 

felino

Utente Attivo
12 Dic 2013
940
10
18
Aci Catena (Catania)
Grazie Criric, l'append all'head avviene eseguito al click su una checkbox, quindi non c'è alcun caricamento della pagina...

Dimenticavo, il mio è un progetto ASP.net, forse potrai trovare una soluzione migliore?
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
non ho ben capito l'utilizzo che ne devi fare ma per aggiornare la pagina puoi usare location.href
HTML:
<html>
    <head>
        <title>refresh</title>
        <script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
        <script type='text/javascript'>
            $(document).ready(function() {
                $("#refresh").change(function() {
                    if ($(this).is(':checked')) {
                        var refresh = setTimeout(function() {
                            location.href = "?"
                        }, 30000);
                    } else {
                        clearTimeout(refresh);
                    }
                });
            });
        </script>
    </head>
    <body>
        <input id='refresh' type='checkbox' name='refresh'/> Aggiorna pagina
    </body>
</html>
 

felino

Utente Attivo
12 Dic 2013
940
10
18
Aci Catena (Catania)
Ottimo, sei stato molto preciso e diretto.

Ho delle pagine con dei grafici che dovrei aggiornare ogni xx, quindi tramite una checkbox l'utente decidere si avviare un refresh automatico della pagina così da vedere i dati aggiornati oppure no.

Quindi dovrei inserire il valore della checkbox in sessione così da richiamarla nelle pagine interessate.
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Potresti usare il local storage per memorizzare la scelta
L'esempio che ti ho postato diventerebbe cosi
HTML:
<html>
    <head>
        <title>refresh</title>
        <script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
        <script type='text/javascript'>
            $(document).ready(function() {
                if (localStorage.aggiornamento == 1) {
                    $("#refresh").attr("checked", "checked");
                }
                aggiornamentoAutomatico();
                $("#refresh").change(function() {
                    aggiornamentoAutomatico();
                });
            });
            function aggiornamentoAutomatico() {
                if ($("#refresh").is(':checked')) {
                    var refresh = setTimeout(function() {
                        location.href = "";
                    }, 30000);
                    localStorage.aggiornamento = 1;
                } else {
                    localStorage.aggiornamento = 0;
                    clearTimeout(refresh);
                }
            }
        </script>
    </head>
    <body>
        <input id='refresh' type='checkbox' name='refresh'/> Aggiorna pagina
    </body>
</html>
non ci ho ragionato molto potrebbero esserci errori di logica
 

felino

Utente Attivo
12 Dic 2013
940
10
18
Aci Catena (Catania)
[Risolto]
Ho delle pagine con dei grafici che dovrei aggiornare ogni xx, quindi tramite una checkbox l'utente decidere di avviare un refresh automatico della pagina così da vedere i dati aggiornati oppure no:

- inserisco il valore della checkbox in sessione perchè lo userò nelle altre pagine;
- sto usando delle componenti di terze parti, quindi non ho usato chiamate Ajax o Json, anche perchè l'aggiornamento avviene in un lasso di tempo molto lungo (orario!).

HTML:
Codice:
<input id="realTime" type="checkbox" value="true" name="realTime"> 
<span id="realTimeMsg"></span>

JS:
Codice:
<script>
    var refresh;

        $("input#realTime").click(function (event) {

            if ($(this).is(":checked")) {

                //Messaggio
                $("#realTimeMsg").text("(Attivo)").css({ "color": "green", "font-size": "12px" }).show("slow", function () {

                    refresh = setInterval('location.reload()', "60000");

                    //Inserisco il valore della checkbox in sessione
                    SaveToSession("sessioneRealTime", $("#realTime").val());

                    $("#realTimeMsg").delay(2000).fadeOut("slow");

                });

            } else {

                $("#realTimeMsg").text("(Non attivo)").css({ "color": "red", "font-size": "12px" }).show("slow", function () {

                    clearTimeout(refresh);

                    //Inserisco il valore della checkbox in sessione
                    RaGe.UnitPerf.SaveToSession("sessioneRealTime", $("#realTime").val());

                    $("#realTimeMsg").delay(2000).fadeOut("slow");

                });
            }
        });

    });

    $(document).ready(function () {

        //Verifico se ho già settato la checkbox del RealTime
        RaGe.UnitPerf.AjaxGetJSON("Home/RestoreFromSession?id=sessioneRealTime", null, function (data) {
            if (!data) {
                //Inserisco checkbo RealTime in sessione
                SaveToSession("sessioneRealTime", $("#realTime").val());
            } else {
                $("input[name=realTime]").attr('checked', "checked");
                refresh = setInterval('location.reload()', "@Def.realTimeSecond");
            }

        });

    });
</script>
 
Discussioni simili
Autore Titolo Forum Risposte Data
D Jquery - modifica elemenento onlick jQuery 1
E Problema jquery Success jQuery 2
R jquery che cambia css di un elemento non mi funziona sulla pagina caricata da ajax Ajax 5
E PHP & jQuery PHP 8
P jquery refresh div non funziona Javascript 0
P lanciare script asp (o php) da jquery Javascript 1
T aiuto per trasformare un quiz fatto in JS in un quiz in JQUERY jQuery 0
Z CSS Slideshow senza JS e JQUERY HTML e CSS 2
Z CSS Slideshow senza JS e JQUERY HTML e CSS 2
MarcoGrazia Validazione remota tramite plugin (jquery validate) Snippet Javascript 0
M Come selezionare e deselezionare radiobutton con jquery jQuery 1
M Come validare textarea con jquery jQuery 0
R Aggiornare record mysql con Ajax, jQuery e php Ajax 2
P Funzione jQuery Ajax invio file a php jQuery 1
Cosina Menu fisso copre i titoli quando cliccati nel sommario jQuery Javascript 4
MarcoGrazia jquery validate() controllo checkbox jQuery 2
D assegnare risultato di una jquery ad una text Javascript 2
felino [JQuery] Append dopo ultimo ul li del primo livello jQuery 2
A php metodo post jquery non da mai errore jQuery 4
T problema con select dinamica con jquery Javascript 0
P jquery .load jQuery 10
E Div che scompare con scroll jquery Javascript 0
T script jquery non funziona più dopo il passaggio a MVC jQuery 5
B jQuery - hide & show li items jQuery 13
Y jQuery Animation Switch On Off jQuery 0
claudio_lorenzo [Javascript] aiuto su jquery per calcolo altezze dom Javascript 1
O [Javascript] Conflitto Jquery: forse... Javascript 0
MarcoGrazia jquery validate, necessità di validare almeno un elemento select su due jQuery 1
M inserire i dati ottenuti da una jquery in una tabella già esistente jQuery 1
D Jquery, conflitto tra loro risolvibile? jQuery 7
M Filtrare risultati con valori checkbox passati con jquery jQuery 2
Tommy03 Variabile PHP dentro a JQuery PHP 3
L Problema jQuery validation AJAX (PHP 7) PHP 6
G Campo HTML input file con jQuery jQuery 0
P Jquery event nel foreach php jQuery 3
M leggere con jquery/ajax in una function javascript record di database sql server Javascript 0
A [Javascript] Ajax, Jquery e PHP Javascript 1
trattorino Mentions Auto Suggesting da jquery a php PHP 2
X Problema con jquery e ajax jQuery 2
G Inserzione script nella pagina html per jquery jQuery 8
MarcoGrazia Validazione forum con jquery.validate jQuery 2
Shyson Smoot scrolling jQuery nella pagina jQuery 0
felino [Javascript] [jQuery] Slick Carousel: visualizzare una porzione dell'immagine successiva Javascript 0
L Scelta form con jquery jQuery 1
F [Javascript] Aprire file tramite jquery Javascript 0
R Aiuto Jquery jQuery 1
G [HTML] Jquery e tooltipster's jQuery 5
I Jquery fadeout-fadein html data jQuery 0
trattorino Estrarre Nome Utente jquery div php PHP 9
L jquery e json controllo valori da determinate chiavi - keys jQuery 0

Discussioni simili