我在Repeater
中有一个Hyperlink
。我想要的是将 NavigateUrl
设置为页面 Url 并将查询字符串添加到末尾。我想出了:
<asp:Hyperlink ID="myLink" runat="server" Text="My Link"
NavigateUrl='<%# Request.Url + "?Id= + Eval("Id") %>' />
这很好用。问题是我想知道如何添加一些逻辑,以便如果 Request.Url
已经包含查询字符串,则不添加 id 查询字符串部分。
如何在 html 页面中执行此操作?请记住,我不能使用 javascript 来实现此目的。
最佳答案
您必须检查两件事才能正确构建导航网址:
- 网址是否包含Id参数?
- 该网址是否已包含任何参数?
使用以下内容:
<asp:Hyperlink ID="myLink" runat="server" Text="My Link"
NavigateUrl='<%# Request.QueryString["Id"] == null ?
(Request.Url.Contains("?") ? Request.Url + "&Id= + Eval("Id") :
Request.Url + "?Id= + Eval("Id")) : Request.Url %>' />
关于c# - 如何在控制标签内包含条件语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6235959/