c# - 如何使用 C# 动态设置 html 链接 <a href>

标签 c# html asp.net

我的 Web 应用程序中有这样一个菜单

<div>
  <ul>
    <li><a href="http://localhost:52451/Voronezh/Settings.aspx">Settings</a</li>
    <li><a href="http://localhost:52451/LoginPages/Welcome.aspx">Log out</a</li>
  </ul>
</div>

如果某些特殊条件为真,我想动态设置这些 href 链接。

我试过以下方法:

HTML代码

<li><a runat="server" id="toSettings" onserverclick="toSettings_ServerClick">Settings</a></li>

C#代码

protected void toSettings_ServerClick(object sender, EventArgs e)
    {
       if (condition)
         toSettings.HRef = "http://localhost:52451/Voronezh/Settings.aspx"; 
       else
         {...}      
    }

但它不起作用:我停留在同一页面上,而不是移动到“设置”页面。

错在哪里?应该改变什么?

提前致谢。

最佳答案

更改 HRef 在这里不会做太多 - 它会更改链接,不会对页面产生任何直接影响。尝试 Response.Redirect ,我想这就是你要找的。即:

// inside the if statement
Response.Redirect("Settings.aspx"); // note - this is the local path

关于c# - 如何使用 C# 动态设置 html 链接 <a href>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30007317/

相关文章:

c# - For循环遍历值

javascript - 将一个 div 堆叠在隐藏在滚动条上的 Bootstrap 导航栏之上

html - 在 HTML 中设置 LI 标签的值

c# - 堆栈跟踪中的错误行号

c# - 获取通过 PropertyDescriptorCollection 循环的 List 项的类型

html - 灰色字体彩印

c# - 每个 ASP.NET session 锁定

asp.net - Telerik Javascript - 可以定制吗?

javascript - 如何使用 jquery 设置当前窗口大小和位置(因为 body onload 不适用于 asp.net)

c# - C# 事件处理程序应该是异常安全的吗?