显示由Ajax检索的图像

时间:2011-06-03 18:23:28

标签: ajax image http

我在这上面阅读了一些帖子,但似乎没有任何帮助。我有一个ajax客户端,它从Jetty服务器上运行的远程Web服务中检索图像。如果我使用浏览器(Firefox等),则检索成功显示。如果我使用ajax脚本,图像将显示为一堆不可读的字符。是否需要在ajax情况下以某种方式从服务器发送图像?我尝试了许多不同的方法,包括数据URI,但似乎没有任何工作。有任何想法吗?我将不胜感激。 Thakns。

2 个答案:

答案 0 :(得分:1)

实际上异步获取图像是使用javascript实现它的字面方式:

var img = new Image();
img.src = "http://your img uri";
document.getElementById("image_container").appendChild(img);

不需要XHR类型的AJAX来获取它。

如果您需要成功回调,可以在img.src定义之前添加它:

img.onload = function() { /* ... */ }

答案 1 :(得分:0)

AJAX中的X代表XML。所以结果基本上是文本。 您可以更改此设置,但取决于使用的框架。像jQuery

一样

也许你正在尝试做一些不需要AJAX的事情。 或者您AJAX只检索该图像的URL。

如果您已将IMG DOM对象实例化为var:

var img = document.getElementById('my_img');

你已经拥有了图片路径(即:'/ img / img.jpg')

img.src='/img/img.jpg';