2013-08-28 2 views
0

작은 ASP.NET 응용 프로그램 (.NET Framework 4)이 있고 다른 스타일의 다른 항목으로 웹 사이트 메뉴를 만들어야합니다. 다음과 같은 것 :asp.net 항목 당 사용자 정의 메뉴

  • ENTRY 1 -> css class "first";
  • ENTRY 2 -> css class "second";
  • ENTRY 3 -> css class "third";

이들은 기본적으로 동일하지만 유일한 차이는 호버링 색상입니다. 나는 메뉴의 각 항목에 대한 주요 링크의 클래스를 변경할 수 있습니다 -

내 질문은 : 후드 아래에 ASP.NET 항상이 같은 HTML 링크를 생성?

나는 이미이 같은 시도 :

하지만 자동으로 링크 내부에서 발생 스팬이 있기 때문에

<div class="topNav"> 
<asp:Menu ID="NavigationMenu" 
    runat="server" 
    EnableViewState="false" 
    IncludeStyleBlock="false" 
    Orientation="Horizontal" 
    MaximumDynamicDisplayLevels="0" 
    StaticDisplayLevels="1"> 

    <Items> 
     <asp:MenuItem NavigateUrl="~/Default.aspx" Text="Home" Value="first"> 
     </asp:MenuItem> 
     <asp:MenuItem NavigateUrl="~/About.aspx" Text="About" Value="second"/> 
    </Items> 
    <StaticItemTemplate> 
     <span class="<%#Eval("Value") %>"><%#Eval("Text") %></span> 
    </StaticItemTemplate> 
    <DynamicItemTemplate> 
     <span class="<%#Eval("Value") %>"><%#Eval("Text") %></span> 
    </DynamicItemTemplate> 
</asp:Menu> 
- 페이지의 레이아웃이 올바르지 않습니다. html로는 다음과 같습니다 : ""태그에서 "수준 1"을 삭제하고 (멀리 갈와 span 태그) "첫 번째"/ "두 번째"로 대체 좋았을 것이다

<ul class="level1"> 
    <li> 
    <a class="level1" href="Default.aspx"> 
     <span class="first">Home</span> 
    </a> 
    </li> 
    <li> 
    <a class="level1" href="About.aspx"> 
     <span class="second">About</span> 
    </a> 
    </li> 
</ul> 

.

그래서 ... 힌트/아이디어가 있습니까?

감사합니다.

<script> 
    $(document).ready(function() { 

     function FixAnchor(cls) { 
      $('a.level1:has(' + "." + cls + ')').each(function() { 
       $(this).text = $('span' + '.' + cls).html(); 
       $(this).removeClass('level1').addClass(cls); 
       $('span' +'.' + cls).removeClass(cls); 
      }) 
     } 

     FixAnchor('first'); 
     FixAnchor('second'); 
    }); 
</script> 

을 그리고 페이지의 머리에 JQuery와에 대한 참조를 추가하는 것을 잊지 마세요 :

답변

1

당신은 JQuery와이 방법을 사용할 수 있습니다

<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script> 
+0

감사합니다! 나는 그것을 시도 할 것이다! 코드에서 직접 만든 뭔가가 있기를 바랬습니다 ... – dcg