如何在gwt中刷新图像?

时间:2011-02-23 08:30:57

标签: gwt

我有一个带有Image小部件和FileUpload小部件的表单。 我可以使用文件upolad来更改图像。

我想在将新图像提交到servlet后立即可视化已更改的图像。但是,如何强制Image小部件从服务器获取新图像? (图片的网址不会改变,内容也会改变。)

2 个答案:

答案 0 :(得分:11)

如果您不能/不想更改服务器上的URL,您可以选择添加查询参数,如:

version++;
image.setUrl(url + "?v" + version);

查询参数将在服务器上被忽略(除非您想以某种方式使用它),但它会强制重新加载,因为浏览器不知道图像是否可能是动态生成的。

答案 1 :(得分:2)

或更好:只需将网址设置为“”然后再返回原始网址即可。在Chrome中测试过。

String url = image.getUrl();
image.setUrl("");
image.setUrl(url);