<asp:LinkButton ID="LinkButton1" runat="server" Text="edit item" onclick='AddItem.aspx?catid=<%# Eval("CollectionID")%>' />
я удалил лишние кавычки значения атрибута для OnClick
.
Однако OnClick
ожидает делегата, а не URL. Либо используйте гиперссылку, либо переключитесь на обработчик событий.
<a href='AddItem.aspx?catid=<%# Eval("CollectionID")%>'>edit item</a>
This article показывает, как передать аргумент обработчика событий с помощью кнопки ссылки. Вместо использования OnClick
вы можете использовать OnCommand
и установить CommandArgument
.
В разметке
<asp:LinkButton id="lnkEdit"
Text="Edit Item"
CommandArgument='<%# Eval("CollectionID")%>'
OnCommand="lnkEdit_Command"
runat="server"/>
В CodeBehind
protected void lnkEdit_Command(object sender, CommandEventArgs e)
{
// evaluate e.CommandArgument and do something with it
}
Я за помощью URL против обработчика событий команды всякий раз, когда это возможно, поскольку это исключает сравнительно дорогой постбэк.
проблема с цитатой .. может быть .. Просто мысль, почему не поднять событие в коде позади и сделать response.redirect, поскольку это то, что вы делаете? – AJP