1
我有一個asp.net站點地圖與單級下拉菜單。我在母版頁中使用以下代碼,通過生成<li>
和<ul>
將它們顯示爲下拉菜單。它工作正常的問題是,即使有些項目沒有子項目它產生空導致顯示下拉圖標。 如何通過檢查子節點數來停止空的<ul>
世代。ASP.NET站點地圖作爲下拉菜單顯示非子元素的問題
<!--- Menu -->
<div id="horizontalcssmenu" class="horizontalcssmenu">
<asp:SiteMapDataSource ID="SiteMapDataSource1" ShowStartingNode="false" runat="server" />
<ul id="cssmenu1">
<li><a id="A1" href="index.aspx" runat="server">Home</a></li>
<asp:Repeater ID="foo" DataSourceID="SiteMapDataSource1" EnableViewState="false"
runat="server" onitemcommand="foo_ItemCommand">
<ItemTemplate>
<li>
<a href='<%#Eval("url") %>'><%#Eval("Title") %></a>
<ul>
<asp:Repeater ID="bar" DataSource='<%# ((SiteMapNode) Container.DataItem).ChildNodes %>' runat="server">
<ItemTemplate>
<li><a href='<%#Eval("url") %>'><%#Eval("Title") %></a></li>
</ItemTemplate>
</asp:Repeater>
</ul>
</li>
</ItemTemplate>
</asp:Repeater>
</ul>
</div>
<!-- Menu End -->
輸出代碼顯示這樣的事情
<!--- Menu -->
<div id="horizontalcssmenu" class="horizontalcssmenu">
<ul id="cssmenu1">
<li><a href="index.aspx" id="ctl00_A1">Home</a></li>
<li>
<a href='/SVSS/StudentFullDetails.aspx'>Student Details</a>
<ul>
</ul>
</li>
<li>
<a href='/SVSS/StudentMonthlyAttendance.aspx'>Attendance</a>
<ul>
</ul>
</li>
<li>
<a href='/SVSS/MyNotice.aspx'>Notice</a>
<ul>
</ul>
</li>
</ul>
</div>
<!-- Menu End -->
我以前試過,但沒有工作。它顯示錯誤保持在裏面,如果條件 – AjayR
@Ajay - 你也嘗試過'#'嗎? – GunnerL3510