【发布时间】:2014-04-25 20:55:48
【问题描述】:
我试图在单击小图像时显示大图像。我有一个存储图像的 SQL 表,然后在 img 控件中显示该图像。现在我希望这张图片在用户点击它时以更大尺寸的弹出窗口打开。
我从数据库中检索图像并将其显示在 img 控件中的代码是:
<script type="text/javascript">
$('#image1Large').hide().click(function() {
$(this).hide();
});
$('#image1').click(function() {
$('#image1Large').attr('src', this.src)
.show()
.offset({ top: 0, left: 0 });
});
</script>
<img runat="server" id="image1" alt="" src="" height="100" width="100"/>
<img runat="server" id="image1Large" alt=""/>
protected void LoadImage1()
{
SqlCommand cmd = new SqlCommand("sps_getimage", con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@flag", 1);
cmd.Parameters.AddWithValue("@ad_id", ad_id);
con.Open();
SqlDataReader reader = cmd.ExecuteReader(System.Data.CommandBehavior.SequentialAccess);
if (reader.HasRows)
{
reader.Read();
MemoryStream memory = new MemoryStream();
long startIndex = 0;
const int ChunkSize = 256;
while (true)
{
byte[] buffer = new byte[ChunkSize];
long retrievedBytes = reader.GetBytes(0, startIndex, buffer, 0, ChunkSize);
memory.Write(buffer, 0, (int)retrievedBytes);
startIndex += retrievedBytes;
if (retrievedBytes != ChunkSize)
break;
}
byte[] data = memory.ToArray();
img1 = data;
memory.Dispose();
image1.Src = "data:image/png;base64," + Convert.ToBase64String(data);
}
con.Close();
}
【问题讨论】:
-
JQuery 代码在哪里?
-
@raj 这个链接可能对你有用stackoverflow.com/questions/2063199/…
-
我认为这对我来说行不通。
标签: javascript jquery asp.net