【发布时间】:2014-05-19 08:00:00
【问题描述】:
净。这是我的问题。 我在中继器中添加了一张图片。请参阅下面的代码
<asp:Repeater ID="rptCompanyProfile" runat="server" OnItemDataBound="rptCompanImage_ItemDataBound" DataMember="PICTURE_CONTENT">
<ItemTemplate>
<td width="200px">
<asp:HiddenField ID="hfPictureContent" runat="server" Value='<%#Eval("PICTURE_CONTENT") %>' />
<asp:ImageButton ID="ImageButton1" runat="server"
ImageUrl='<%# string.Format("data:image/jpg;base64,{0}",Eval("PICTURE_CONTENT"))%>'
PostBackUrl='<%# string.Format("~/Module/Client/WhoWeAreDetail.aspx?filterValue={0}&&filterType={1}",Eval("COMPANY_PROFILE_DETAIL"),Eval("COMPANY_PROFILE_ID") )%>'
/>
</td>
<td width="10px"> </td>
</ItemTemplate>
</asp:Repeater>
当用户移出图像时,我需要更改图像。我的图像存储在数据库中,格式为 base64 字符串。所以我写了如下代码
protected void rptCompanImage_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
ImageButton imageButton = (ImageButton)e.Item.FindControl("ImageButton1");
HiddenField hfPictureContent = (HiddenField)e.Item.FindControl("hfPictureContent");
System.Data.DataRowView rowView = e.Item.DataItem as System.Data.DataRowView;
dlcComProfileDetail profileDetail = (dlcComProfileDetail)e.Item.DataItem;
hfPictureContent .Value= profileDetail.PICTURE_CONTENT_HOVER;
imageButton.Attributes.Add("onmouseout", @"onMouseOut(this," + hfPictureContent.Value + ")");
// imageButton.Attributes.Add("onmouseout", @"this.src='data:image/jpg;base64,"+profileDetail.PICTURE_CONTENT_HOVER+"'");
}
}
我的javascript函数
** function onMouseOut(item, value) {
item.src = "data:image/png;base64," + value;
item.setAttribute('src', src3);
}
</script>**
但我不断收到错误 Uncaught SyntaxError: Unexpected token ) 我无法将我的 base64 字符串图像传递给我的 javascript 函数。
请帮忙。谢谢
【问题讨论】:
标签: c# javascript asp.net base64