Frage

Ich mache einen Upload mit Ajaxupload Plugin und ich bin mit dieser Funktion in OnComplete Falle 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";
}

aber neu angelegtes Bild aus einem Grunde erscheinen tut. Ich habe versucht, dass "? dummy = 371662" aber nicht funktioniert hat.

Ich benutze dies auch für onsubmit Fall 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>

Dies ist die HTML dieses Element

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

Irgendwelche Vorschläge dazu?

War es hilfreich?

Lösung

Auf der Basis Ihrer Änderungen und Kommentare oben, ich glaube, Sie so etwas wie dieses brauchen:

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";
    }
}

Ihr früherer Versuch, den Cache zu umgehen funktioniert nicht, weil Ihr „Dummy“ Wert gleich ist jedes Mal. Durch die Verwendung einer junk() Funktion, wie oben, Sie einen anderen Zufallswert jedes Mal erhalten, um sicherzustellen, dass das Bild nicht im Cache gespeichert werden kann.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top