0

我有一个 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);
4

4 回答 4

2

您的浏览器可能正在缓存图像。禁用图像缓存或设置正确的缓存响应。

于 2008-11-30T06:59:29.160 回答
2

它被缓存在浏览器中。为了克服这个问题 - 改变图像的 url。这可以通过在图像文件名中包含时间戳、版本号或 guid 来完成。

于 2008-11-30T09:43:31.920 回答
0

您可以从服务器端重新加载

Response.Redirect(Request.URL)
于 2008-11-30T07:02:45.473 回答
0

A useful tool to debug this is fiddler. As others already suggested it's likely that the browser caches the old version of the image. If you are using IIS you can change the cache policy so that the browser always check for a newer version of the image.

于 2008-11-30T09:57:52.063 回答