我创建了一个带有工作可折叠面板的 asp.net 文件。我假设如果我获取客户端的源并将其复制到 HTM 文件中,它仍然可以工作 - 但事实并非如此。
我所做的是“查看源代码”并将其全部复制到空白 HTM 文件中。除了可折叠面板外,一切都在工作。
为什么?我可以修复它吗?
谢谢
我创建了一个带有工作可折叠面板的 asp.net 文件。我假设如果我获取客户端的源并将其复制到 HTM 文件中,它仍然可以工作 - 但事实并非如此。
我所做的是“查看源代码”并将其全部复制到空白 HTM 文件中。除了可折叠面板外,一切都在工作。
为什么?我可以修复它吗?
谢谢
我将尝试简短地解释,但必须使用假设。ASP.NET 是一个在运行时编译的 Web 应用程序框架,这意味着您的页面从对象和控件转换为 html、css 和 javascript;Javascript (ScriptResource.axd) 已加密,您无法访问 htm 页面中的脚本。关于 ScriptResource.axd 的好链接
好消息是肯定的!假设您使用的是 AJAXToolKit(是的,这是一个很大的假设),您可以改为使用仅包含一个部分的 jQuery UI Accordion。我测试了两者,它们的工作方式相同。我希望这有帮助!jQuery 手风琴参考
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<ajaxToolkit:CollapsiblePanelExtender runat="server"
TargetControlID="Panel1"
Collapsed="true"
ExpandControlID="LinkButton1"
CollapseControlID="LinkButton1" />
<asp:LinkButton ID="LinkButton1" runat="server">Panel</asp:LinkButton>
<asp:Panel ID="Panel1" runat="server">
This is a Test
</asp:Panel>
</div>
</form>
<head>
<title></title>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.21/jquery-ui.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$('#Panel1').hide();
$('#pnlLink').click(function () {
$(this).next().toggle();
return false;
}).next().hide();
});
</script>
</head>
<body>
<a id="pnlLink" href="#">Panel</a>
<div id="Panel1">
<div>
This is a test</div>
</div>
</body>
您可以使用 jQueryUI 手风琴功能 http://jqueryui.com/accordion/
或 jQuery slideToggle() 函数问候 Nate