我正在使用GD库来绘制图像,之后我将使用jquery ajax获取该图像。但是当我更新图像时,jquery ajax没有获得更新的图像,而当我检查图像更新的目录时有一个问题。所以请在这种情况下帮助我如何在jquery ajax响应中获得更新的图像。
我从jcery获取响应的jquery代码如下:
jQuery.ajax({
type: "POST",
url: "create.php",
dataType:"text",
data:myData,
success:function(response){
//location.reload();
var result = response.split("|");
document.getElementById('img').innerHTML = result[0]; // This is the image
document.getElementById('download').innerHTML = result[1]; // this is a href link for some other purpose
},
error:function (xhr, ajaxOptions, thrownError){
alert(thrownError);
}
});
在这种情况下请帮助我。感谢
答案 0 :(得分:2)
不确定缓存,请尝试使用create.php?123451234(randomNumber)
。
您还可以将result
的输出添加到您的答案中吗?
我认为主要的错误是你设置的innerHTML
取代了你需要的东西。
为什么不使用像
jQuery.('#img').attr('src', result[0]);
<强>更新强>
查看您的代码,替换为:
<div id="img"><img src="images/quotepreivewimg.gif" alt="" /></div>
由此:
<div><img id="img" src="images/quotepreivewimg.gif" alt="" /></div>
然后使用上面的jQuery.attr函数加载图片
答案 1 :(得分:1)
这不起作用:
document.getElementById('img').innerHTML
图片没有任何内部html代码,你必须使用src属性:
document.getElementById('img').src = result[0];
答案 2 :(得分:0)
更改
document.getElementById('img').innerHTML = result[0];
为:
document.getElementById('img').src = result[0];
更新版本:
jQuery.ajax({
type: "POST",
url: "create.php",
dataType:"text",
data:myData,
success:function(response){
//location.reload();
var result = response.split("|");
document.getElementById('img').src = result[0]; // we need the src property here
document.getElementById('download').innerHTML = result[1]; // this is a href link for some other purpose
},
error:function (xhr, ajaxOptions, thrownError){
alert(thrownError);
}
});
希望这有帮助。