我使用Visual Studio 2010和ASP.NET 4.0將Menu控件呈現爲HTML列表,以便使用CSS對其進行樣式設置。這裏是我用下面如何禁用JavaScript中的自定義菜單控件?
<asp:Menu ID="navlist" runat="server" Orientation="Horizontal"
SkipLinkText="" ClientIDMode="Static" DataSourceID="MenuSource"
MaximumDynamicDisplayLevels="0" IncludeStyleBlock="False"
StaticDisplayLevels="2">
</asp:Menu>
代碼這將產生以下HTML
<!-- URL shortened -->
<script src="/WebResource.axd?...t=634066906994188146"type="text/javascript"></script>
<div id="navlist">
<ul>
<li><a href="link1.html">Link 1</a></li>
<li><a href="link2.html">Link 2</a></li>
</ul>
</div>
乍一看,這看起來正是我想要的。但是,如果我打開WebResource.axd,則會出現一大堆與該菜單相關的JavaScript代碼。這段代碼的一部分是將它自己的內聯樣式應用到列表中。使用Firebug的JavaScript已被執行之後,我可以查看HTML標記,它看起來是這樣的:
<div id="navlist" style="float: left;">
<ul class="level1 static" tabindex="0" style="position: relative; width: auto; float: left;" role="menubar">
<li role="menuitem" class="static" style="position: relative; float: left;">
<a href="link1.html" class="level2 static" tabindex="-1">Link 1</a>
</li><li role="menuitem" class="static" style="position: relative; float: left;">
<a href="link2.html" class="level2 static" tabindex="-1">Link 2</a></li>
</ul>
</div>
這些內嵌樣式最終影響到我的網頁的佈局。我不需要WebResource.axd中的任何腳本。如何防止該腳本在頁面的最終標記中呈現?
謝謝大衛,我會試着去另一個方向 – Cory 2010-06-21 05:08:56