我在asp.net中使用此代码:
string link = "<a href=\"" + Request.Url.AbsolutePath + "?Id=" + x + ">" + "link" + "</a>";
literalLink.Text = link;
<asp:Literal ID="literalLink" runat="server"></asp:Literal>
但我在此链接中有回发。
答案 0 :(得分:2)
如果我理解正确(我可能没有),你只想在PostBack后显示链接。如果是这种情况,你可以这样做:
ASPX代码:
<asp:HyperLink ID="visitAgain" Text="Link" Visible="False" runat="server" />
代码背后:
protected void Page_Load(object sender, EventArgs e)
{
if (IsPostBack)
{
visitAgain.Visible = true;
visitAgain.NavigateUrl = Request.Url.AbsolutePath + "?Id" + x;
}
}
这样做而不是.aspx文件中的所有逻辑都具有提高可读性和更清晰代码的额外好处。
答案 1 :(得分:1)
如果您希望将PostBack事件发送到您正在使用链接的页面,请使用<asp:LinkButton>
元素。它与普通按钮相同,只是它显示为一个公共链接。
<asp:LinkButton runat="server" Id="lnkButton" Text="I do a postback, yay" OnClick="TheFunctionThatHandlesTheClickIfNecessary" />