通过jQuery AJAX获取图像

时间:2013-06-27 09:46:07

标签: asp.net-mvc-3 jquery imagesource

以下图片代码位于我的登录页面

<img id="CaptchaImg" alt="Captcha" src="@url.action("Captcha","Login")" style="" />

现在当我刷新我的登录页面时,它运行正常,并从控制器获取图像,但是当我登录并登录页面呈现时,控制器方法没有被调用。问题仅在IE中正常运行。有工作吗? 我可以用jQuery Ajax调用控制器,我试过这个但是没有调用成功方法。还有其他办法吗?

$.ajax({
    type: "GET",
    url: '/Login/CaptchaImage',
    datatype: "image",
    success: function(data) {
        debugger
        $('#CaptchaImg').attr('src', data);
    }
});

2 个答案:

答案 0 :(得分:10)

试试这个

$.ajax({
    type: "GET",
    url: '@Url.action("Captcha","Login")',
    dataType:"image/jpg",
    success: function (data) {
        $('#CaptchaImg').attr('src', data);
      }
 });

答案 1 :(得分:0)

web服务器应该返回base64数据。像这样

{ base64Data:"blahblahblah" }

你的ajax请求内容类型可以是普通的json; 你在ajax中的成功功能可以这样做

    success:function(data){
     var src="data:image/png;base64,"+data.base64Data;
      $('#CaptchaImg').attr(src,src)
}