在母版页中设置动态Href超链接

本文关键字:Href 超链接 动态 设置 母版页 | 更新日期: 2023-09-27 18:07:10

可以:

<%  if (Sql.ToBoolean(HttpContext.Current.Application["CONFIG.SHOW_REPORTING_LINK"])) 
    { 
%>
    <asp:HyperLink ID="hypReporting" ForeColor="white" Text='Reporting' NavigateUrl="#" CssClass="myAreaLink" Runat="server" />
           &nbsp;<font color="white">|</font>&nbsp; 
<% 
    } 
%>

但是,我需要一个动态链接,而不是静态链接。我试过了:

<%  if (Sql.ToBoolean(HttpContext.Current.Application["CONFIG.SHOW_REPORTING_LINK"])) 
    { 
%>
    <asp:HyperLink ID="hypReporting" ForeColor="white" Text='Reporting' NavigateUrl="<%# Eval(HttpContext.Current.Application["CONFIG.REPORTING_URL"]) %>" CssClass="myAreaLink" Runat="server" />
           &nbsp;<font color="white">|</font>&nbsp; 
<% 
    } 
%>

但是,它给了我一个错误,说:"服务器标记格式不佳。"

我通常会从代码隐藏中执行此操作,但在.master文件中没有代码隐藏,对吗?

谢谢你的帮助。

在母版页中设置动态Href超链接

是NavigateUrl中的双引号导致了错误的服务器标记。应该是:

NavigateUrl='<%# Eval(HttpContext.Current.Application["CONFIG.REPORTING_URL"]) %>'

你应该去掉那个<font>标签,只使用CSS。该标签已弃用

是的,在母版页文件中有代码隐藏(右键单击->查看代码;或在解决方案资源管理器中,确保单击"显示所有文件")。