在动态创建的图像标签中显示检索到的图像

时间:2016-03-23 09:56:54

标签: c# asp.net image src

在从数据库中检索图像数据之后,我可以在代码隐藏中通过Src属性设置<img />标记的src:

HTML:

<img runat="server" id="photo" alt="" src=""/>

代码隐藏:

byte[] b = null;
//db connection here          
            while (sdr.Read())
            {

                Room room = new Room();
                b = (byte[])sdr["photo"];
                picture.Src = "data:image/jpg;base64," + Convert.ToBase64String(b).ToString();

            }

我无法对动态创建的img html控件应用相同的内容:因为Src属性无法识别它(在构建时)。

Room r=new Room();
 b = (byte[])sdr["Photo"];
 r.Photo.Src= "data:image/jpg;base64," + Convert.ToBase64String(b).ToString();

(r.Photo.Src - &gt;错误:'string'不包含'Src'的定义,并且没有扩展方法'Src'接受类型字符串的第一个参数可以找到(你错过了吗?) using指令或程序集引用?))

我的jquery代码的一部分:

$.each(r, function (k) {
         divItem.append(
                     $('<div />', { "class": "row" }).append($('<img />', { "class": "h-looks" ,"id":"photo"})),
                     $('<span />', { "class": "hiddenidspan",text:id })
                       );
                });

动态创建的img标签不是runat =“server”,但它们在构建时不存在。

我该怎么做?

1 个答案:

答案 0 :(得分:0)

您可以在服务器上生成base64字符串并将它们存储为js数组。然后在js中,当您创建图像时,只需使用预生成数组中的相应行。