我有一个ASPX页面,我在服务器端按钮点击事件上将图像上传到服务器。在我的页面中,它将显示可用的图像(如果存在)。当我上传图片时,它将用新图片替换旧图片。现在上传后,同样的图像也会显示出来。怎么解决这个问题?我使用window.location.reload()javascript函数刷新,但后来它无法正常工作。它再次发布页面。
这是我的代码
Do UploadImage(studentId,mode); // Function to upload image
StringBuilder sbc = new StringBuilder();
sbc.Append("<script language='javascript'>");
sbc.Append("alert('Upload process completed successfully!');");
sbc.Append("window.location.reload()");
sbc.Append("</script>");
HttpContext.Current.Response.Write(sbc);
答案 0 :(得分:2)
您的浏览器可能正在缓存图片。禁用图像上的缓存或设置正确的缓存响应。
答案 1 :(得分:2)
它正在浏览器中缓存。要克服这一点 - 改变图像的网址。这可以通过在图像文件名中包含时间戳,版本号或guid来完成。
答案 2 :(得分:0)
您可以从服务器端重新加载
Response.Redirect(Request.URL)
答案 3 :(得分:0)
调试此问题的有用工具是fiddler。正如其他人已经建议的那样,浏览器可能会缓存旧版本的图像。如果您使用的是IIS,则可以更改缓存策略,以便浏览器始终检查映像的较新版本。