2010-09-24 61 views
0
<li> 
    <asp:HyperLink ID="hlLogin" runat="server" 
    CssClass='<%# Css4Item(Eval("Page.Request.Path")) %>' 
    Text="Prijava" NavigateUrl="~/Login.aspx"></asp:HyperLink> 
</li> 

protected string Css4Item(object url) 
{ 
    return url.ToString().EndsWith(Page.Request.Path, 
    StringComparison.OrdinalIgnoreCase) ? "active" : string.Empty; 
} 

我该如何执行<%# Css4Item(Eval("Page.Request.Path")) %>当我点击超链接时,我将获得Css4Item方法的路径。此代码未执行。当我点击链接没有任何反应。HyperLink点击问题

回答

2

此代码将仅执行到可绑定容器中,因为您使用的是Data-Binding expression syntax

由于某种原因,如果您尝试将ResponseWrite用于webcontrols属性(形式为'<%=%>')不起作用,我认为您必须从代码背后设置CssClass,在页面生命周期中(可能在Page_Load上)。

+0

thx为您的答案。 – senzacionale 2010-09-24 16:25:49

+0

不客气。 – tanathos 2010-09-24 16:30:34