在jquery中使用base64设置图像源

时间:2015-05-28 09:15:38

标签: c# jquery asp.net-mvc-4

在我的网络应用程序中,我将图像存储为数据库中的字节数组,在页面中,我想使用自动完成功能在下拉列表中显示图像

我正在使用以下jquery代码

$(function() {
    $('#userName').autocomplete({
        source: function(request, response) {
            $.getJSON("/Users/getData?term=" + request.term, function(data) {
                response(data);
            });
        },
        select: function(event, ui) {
            $("#userName").val(ui.item.label);
            return false;
        },

        minLength: 2,
        delay: 100
    }).data("ui-autocomplete")._renderItem = function(ul, item) {
        return $("<li></li>")
            .data("item.autocomplete", item)
            .append("<a>" + item.value + item.Image + " - " + item.label + "</a>")
            .appendTo(ul);
    };
});

这里item.Image是一个bytearray,如何在这里显示图像,

感谢

1 个答案:

答案 0 :(得分:1)

标准的base64编码图像是:

 <img src='data:image/jpeg;base64, LzlqLzRBQ...<!-- base64 data -->' />

所以更新你的代码:

.append("<a>" + item.value + "<img src='data:image/jpeg;base64, "+ item.Image + "' /> - " + item.label + "</a>")

<强> [编辑] 你在getData中的代码必须使(服务器端)转换,item.Image的结果应该是base64:

Convert.ToBase64String(imagebytearray)