Asp.net
動態設置超連結控制項的 NavigateUrl 屬性內聯
如何在 aspx 頁面中動態設置獨立(不在 gridview 中)超連結控制項的 NavigateUrl 屬性內聯?
我嘗試執行以下操作,但沒有成功。
<asp:HyperLink id="MyLink" NavigateUrl="../mypage.aspx?id=<%= pageid %>" runat="server">My Page</asp:HyperLink>
您可以在程式碼隱藏中執行此操作:
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { string pageid = "123"; MyLink.NavigateUrl = string.Format("../mypage.aspx?id={0}", pageid); } }更新:
現在@Marko Ivanovski 在評論中指出我這個超連結在一個
GridView我一開始沒有註意到的內部,最簡單的方法是使用數據綁定(<%#語法):<asp:TemplateColumn> <ItemTemplate> <asp:HyperLink id="MyLink" NavigateUrl='<%# Eval("pageid", "~/mypage.aspx?id={0}") %>' runat="server"> My Page </asp:HyperLink> </ItemTemplate> </asp:TemplateColumn>在這種情況下
pageid是數據源的一個屬性。更新 2:
你真的需要伺服器端控制項嗎?怎麼樣:
<a href="<%= this.ResolveUrl("~/mypage.aspx?id=" + pageid) %>"> My Page </a>