我正在尝试在我的UpdatePanel中发出每个回发请求之前和之后添加一些JQuery动画。到目前为止,我得到的是这样的东西:
<script type="text/javascript">
$(document).ready(function () {
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(BeginRequestHandler);
function EndRequestHandler(sender, args) {
if (args.get_error() == undefined) {
// End Request (1)
}
}
function BeginRequestHandler(sender, args) {
// Start Request (2)
}
$('.MyButtons').live('click', function () {
// Before request (3)
});
});
</script>
<asp:UpdatePanel runat="server">
<ContentTemplate>
<asp:Button runat="server" CssClass="MyButtons"/>
</ContentTemplate>
</asp:UpdatePanel>假设我想将一些动画代码放在(3)中,这些代码将被执行,然后继续BeginRequestHandler函数。我该怎么做呢?因为现在整个过程执行3, 2 ,1,而我不知道如何在第3步和第2步之间添加延迟。换句话说,我想在第3步手动执行第2步。我真的不想使用隐藏按钮来这样做。
发布于 2011-01-25 09:21:37
好的,我最终使用了以下内容:
$('.MyButtons').live('click', function () {
var element = this;
$('#hideMe').hide('slow', function () {
__doPostBack(element.id.replace(/_/g, '$'), ''); // This will trigger a postback on a clicked server control
});
return false; // This will prevent asp.net click event on the server control
}https://stackoverflow.com/questions/4787514
复制相似问题