带有Eval()的NavigateUrl的HyperLink。 哪里出错了?
首先,我在Page_Load()
代码隐藏中更改了HyperLink.NavigateUrl
。
但在我决定使用Eval()
方法进行设计之后。
<asp:HyperLink runat="server" NavigateUrl='' Text="Refuse" />
要么
<asp:HyperLink ID="urlRefuse" runat="server" NavigateUrl='' Text="Refuse" />
其中id
和type
– 来自Request
变量。
但它不起作用。 仅显示原始文本“拒绝”。 我的错误在哪里? 提前致谢。
这很有效
NavigateUrl='<%# Eval("type","~/Refuse.aspx?type={0}") %>'
这对我有用
NavigateUrl='<%# String.Format("{0}.aspx?ID={1}", DataBinder.Eval(Container.DataItem, "Category"), DataBinder.Eval(Container.DataItem, "Post_ID")) %>'
在浏览器中尝试使用ViewSource,在href中向客户端呈现什么? 这是你的期望吗? 如果您尝试使用请求集合中的变量而不能使用Eval,则需要使用Request查询字符串参数。
试试这个:
HttpUtility.UrlEncode(Eval("type")
试试这个:
Accept
试试这个对我有用:
Eval("type").ToString()