我得到错误:服务器标记格式不正确。 LinkBut​​ton 声明有什么问题?提前谢谢你。 最佳答案 ' /> 我删除了 OnClick 属性值周围的多余引号。 但是,OnC-6ren">
gpt4 book ai didi

c# - 如何在链接按钮控件中将参数传递给 Eval()?

转载 作者:太空狗 更新时间:2023-10-30 00:26:53 25 4
gpt4 key购买 nike

ASP 声明:

 <asp:LinkButton ID="LinkButton1" runat="server" Text="edit item" onclick="'AddItem.aspx?catid=<%# Eval("CollectionID")%>'"></asp:LinkButton>

我得到错误:服务器标记格式不正确。

LinkBut​​ton 声明有什么问题?提前谢谢你。

最佳答案

<asp:LinkButton ID="LinkButton1" runat="server" Text="edit item" onclick='AddItem.aspx?catid=<%# Eval("CollectionID")%>' />

我删除了 OnClick 属性值周围的多余引号。

但是,OnClick 需要委托(delegate),而不是 URL。使用超链接或切换到事件处理程序。

<a href='AddItem.aspx?catid=<%# Eval("CollectionID")%>'>edit item</a>

This article显示如何将参数从链接按钮传递到事件处理程序。您可以使用 OnCommand 并设置 CommandArgument 属性,而不是使用 OnClick

在标记中

  <asp:LinkButton id="lnkEdit" 
Text="Edit Item"
CommandArgument='<%# Eval("CollectionID")%>'
OnCommand="lnkEdit_Command"
runat="server"/>

在代码隐藏中

protected void lnkEdit_Command( object sender, CommandEventArgs e )
{
// evaluate e.CommandArgument and do something with it
}

我赞成尽可能使用 URL 而不是命令事件处理程序,因为它消除了相对昂贵的回发。

关于c# - 如何在链接按钮控件中将参数传递给 Eval()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9041921/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com