如何在点击中继器上获取图像url
本文关键字:获取 图像 url 中继器 | 更新日期: 2023-09-27 18:30:14
我想在中继器中点击数据库中的图像时获得图像url我的数据库包含(id,url)
我的中继器代码是:
<asp:Repeater runat="server" ID="repeater" >
<ItemTemplate >
<asp:ImageButton runat="server" Width="200px" Height="200px" ImageUrl='<%#Eval("url") %>' OnCommand="Image_Click" CommandName="ImageClick" CommandArgument='<%#Eval("url") %>' />
</ItemTemplate>
</asp:Repeater>
我的.cs代码是
protected void Image_Click(object sender, CommandEventArgs e)
{
if (e.CommandName == "ImageClick")
{
string a=e.CommandArgument.tostring();
responce.write(a);
}
}
您可以在ImageClick 中执行
((ImageButton)sender).ImageUrl
获取点击按钮的url
将发送方转换为ImageButton并读取其ImageUrl属性。
另外,您使用命令而不是处理ImageButtons单击事件是有原因的吗?
Vladimir和Guigui的回答都是访问图像按钮URL的首选方式。
如果除了URL之外还需要ID值,可以将多个值存储到CommandArgument中,用逗号分隔。
<asp:ImageButton runat="server"
ImageUrl='<%#Eval("url") %>'
OnCommand="Image_Command"
CommandName="ImageClick"
CommandArgument='<%# Eval("Id")%> + "," + Eval("url") %>' />
protected void Image_Command(object sender, CommandEventArgs e)
{
if (e.CommandName == "ImageClick")
{
string[] commandArgs = e.CommandArgument.ToString()
.Split(',');
string id = commandArgs[0];
string url = commandArgs[1];
}
}