Question

Je fais un téléchargement avec le plugin Ajaxupload et j'utilise cette fonction dans l'événement OnComplete d'ajaxupload;

function degis(){
var a = "<?php echo $id; ?>";
document.getElementById("imga").src = "../artwork/"+a+"/logo.jpg?dummy=371662";
document.getElementById("imga").style.width = "500px";
document.getElementById("imga").style.height = "175px";
}

mais la nouvelle image téléchargée n'apparaît pas pour une raison. J'ai essayé que "? dummy = 371662" mais n'a pas fonctionné.

J'utilise également cela pour l'événement Onsubmit de ajaxupload

function updeg(){
var a = "uploading.gif";
document.getElementById("imga").style.width = "50px";
document.getElementById("imga").style.height = "50px";
document.getElementById("imga").src = a;

}
</script>

c'est le code HTML de cet élément

 <img id="imga" alt="" height="175px" src="../artwork/<?php echo $id; ?>/logo.jpg?dummy=371662" width="500px">

Des suggestions à ce sujet?

Était-ce utile?

La solution

Sur la base de vos modifications et commentaires ci-dessus, je pense que vous avez besoin de quelque chose comme ceci:

function junk() {
    return (new Date()).getTime() + Math.round(Math.random());
}

function degis() {
    var img = document.getElementById("imga");
    if (img) {
        img.src = "../artwork/<?php echo $id; ?>/logo.jpg?nocache=" + junk();
        img.style.width = "500px";
        img.style.height = "175px";
    }
}

Votre précédente tentative de contournement du cache ne fonctionne pas, car votre "dummy". la valeur est la même à chaque fois. En utilisant une fonction junk () , comme ci-dessus, vous obtenez une valeur aléatoire différente à chaque fois, garantissant que l'image ne peut pas être mise en cache.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top