在 ASP.NET 中,在客户端,我使用了一种重复的方法来生成包含来自数据库的数据的表。对于每个条目,我都有一个 asp 按钮来删除每个条目。现在,当我需要传递时,我遇到了一个问题,对于每个按钮,它都是数据库中的 ID,并且因为它是<asp:button ... />
,所以我无法使用 CommandArgument='<%=id %>' 运行服务器端代码行,所以我可以把它每个按钮的 ID。我能做些什么呢?
问问题
120 次
2 回答
1
使用绑定表达式。
<%# Id %>
并从代码隐藏调用Control.DataBind()
或方法。DataBind()
于 2012-07-17T07:16:41.990 回答
1
如果你有中继器,你可以这样使用:
<asp:Repeater ID="Repeater1" runat="server" OnItemCommand="Repeater1_ItemCommand">
<ItemTemplate>
<div class="box">
<%# Eval("name") %>
<asp:Button ID="btnDelete" Runat="server" Text="Delete" CommandName="delete" CommandArgument='<%# Eval("Id") %>'></asp:Button>
</div>
</ItemTemplate>
</asp:Repeater>
- -C# - - -
protected void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e)
{
...
((System.Web.UI.WebControls.Button)(e.CommandSource)).CommandArgument - is the id of current row
...
}
于 2012-07-17T07:25:55.417 回答