Bonjour,
Je rafraichis ma page automatiquement toute les 5 secondes via javascript (et non pas par la balise meta) pour que les donnes sql soient visible sans lancer le rafraichissement à la main.

Mon souci est que j'ai des input et que lorsque l'utilisateur entre des données tout est effacer à cause du rafraichissement, j'ai pensé à utliser onfocus et de forcer un rafraichissement beaucoup plus long pour laisser le temps à l'utilsateur de faire sa saisie.

window.setTimeout(function(){ document.location.reload(true); }, 500000);

Mais cela ne fonctionne pas...ensuite j'ai essayé de créer une variable, genre

onfocus="stopRefresh=0;"

et dans la page html:

if(stopRefresh == 1)
{
window.setTimeout(function(){ document.location.reload(true); }, 5000);
}
else
{
window.setTimeout(function(){ document.location.reload(true); }, 500000);
}

Mais sans succès, auriez vous une idée de comment m'en sortir ?
J'ai essayé aussi de modifier la valeur de content dans la balise meta (dans le cas ou je me sers de celle-ci pour le rafraichissement mais aussi sans succés)

2 réponses


Essaye de tester ta variable a l'intérieur de ton timeout. Un truc de ce genre (a debuguer)

window.setTimeout(
    function(){
        if (!stopRefresh)
            document.location.reload(true);
    }, 5000);

tu peux ensuite changer stopRefresh en fonction de tes besoins.

Merci vallyan, ça marche impeccable...bonne journée