我觉得你可以改一下
<a runat="server" href='<%#link%>' ID="TheLink">
Test
</a>
到这里
<a href='<%=link%>' ID="TheLink">
Test
</a>
<%# 只是运行代码,但不输出任何内容。 <%= 将输出这些标签内的任何内容。
不要忘记删除runat=server,因为如果您不删除<%=,它将生成纯文本。
或者也许你可以改成这个
<asp:LinkButton id="myid" runat="server" OnClick="redirectToLink" Text="Test" />
代码后面:
protected string link = "http://www.test.com";
protected void redirectToLink(object sender, EventArgs e)
{
Response.Redirect(link);
}
或者,如果您坚持使用带有代码的 href,您可以这样做:
<asp:Label ID="testLabel" runat="server" />
后面的代码:
protected string link = "http://www.test.com";
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
testLabel.Text = string.Format("You also have to click on is <a href=\"{0}\"> link </a>",link);
}
}