我有一个手风琴控制内部的两个UpdatePanel的,布局是这样的:的UpdatePanel刷新一次
<accordion>
<first pane content>
<updatepanel UpdateMode="conditional">
<contenttemplate>...</contenttemplate>
<triggers>...</triggers>
</updatepanel>
</first pane content>
<second pane content>
<updatepanel>
<contenttemplate>...</contenttemplate>
<triggers>...</triggers>
</updatepanel>
</second pane content>
</accordion>
面板更新一次,但在这之后,没有更新发生。如果我刷新页面,那么我可以看到更新的信息。这意味着数据库正在更新,但updatepanel不刷新(第一次刷新后)。这是为什么发生?
这一直困扰着我几天,所以任何意见将不胜感激。 谢谢!
更新
的问题似乎在于,当我把这个:
Sys.require(Sys.components.accordion, function() {
$("#acca_profile").accordion({
HeaderCssClass: "acc_header",
HeaderSelectedCssClass: "acc_selectedheader",
FadeTransitions: true,
suppressHeaderPostbacks: true,
requireOpenedPane: false
});
});
在
endRequestHandler
功能
。但是,如果我不叫它,那么应该转换为手风琴的div不再是手风琴。
更新2
更多的工作之后,我想这个问题可能在于一个事实,即jQuery是不是重新绑定局部回传后的事件。很多解决方案的要求,你必须注册客户端脚本,但我有这个在我的aspx页面的顶部:
<asp:ScriptManager runat="server" EnablePageMethods="true">
<Scripts>
...(其它脚本) PATH =“HTTP://阿贾克斯。 googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js” />
</Scripts>
</asp:ScriptManager>
怎样才能重新绑定我在我的代码JQuery的事件?
我需要看到更多的代码来帮助 – 2010-04-03 18:47:11
你检查你是否得到任何JavaScript错误?你可以使用萤火虫或任何你喜欢做的。 – 2010-04-03 18:54:29
啊,我发现错误似乎是在endRequestHandler部分调用的函数中。目前,当updatepanel刷新时,手风琴消失(即用于将div转换为手风琴的javascript不再执行)。我试图在endRequestHandler中执行它,虽然这可行,刷新停止。我用手风琴代码更新了我的帖子。 谢谢 – XSL 2010-04-03 19:38:17