我使用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