通过图像响应在jQueryajax成功中设置div背景



我要请求一个控制器操作。回应如下。

return send_file(@image_path,
  :disposition => 'inline',
  :filename => @image.title,
  :type => @image.content_type)

我想要实现的是,在我的ajax成功函数中,我想调用一个div,并将其背景设置为这个响应图像。我怎样才能做到这一点。

我的jquery ajax代码是

jQuery.get('url(:open_image, :id => 'someID' )}').
  success(function(data, status, xhr) {
    jQuery("#my_id").css('background-image', 'url(' + data + ')');
})

这对我不起作用,不知道我做错了什么。

试着在onSuccess方法中放入这样的东西

$('myOjbect').css('background-image', 'url(' + imageUrl + ')');

尝试在PHP中添加base64编码的输出:

base64_encode($output);

在你的CSS中,这样做:

jQuery("#my_id").css('background-image', 'url("data:image/png;base64,' + data + ')');

最新更新