imagem src não muda após o upload
-
06-07-2019 - |
Pergunta
eu estou fazendo um upload com Ajaxupload plugin e eu estou usando esta função no OnComplete caso de 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";
}
mas novo does not imagem enviada aparecer por uma razão. Tentei fazer isso "? manequim = 371662", mas não funcionou.
Eu também estou usando isso para o evento 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>
Este é o html deste elemento
<img id="imga" alt="" height="175px" src="../artwork/<?php echo $id; ?>/logo.jpg?dummy=371662" width="500px">
Todas as sugestões sobre isso?
Solução
Com base em suas edições e comentários acima, eu acho que você precisa de algo como isto:
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";
}
}
A sua tentativa anterior para ignorar o cache não funciona porque o seu valor "fictício" é o mesmo cada vez. Com o uso de uma função junk()
, como acima, você recebe um valor aleatório diferente de cada vez, garantindo que a imagem não pode ser armazenada em cache.