jquery + asp.net延迟回发

时间:2011-12-06 09:17:29

标签: javascript jquery asp.net postback

我想在LinkBut​​ton上实现一个slideUp jQuery效果,然后在页面上进行回发。效果需要600ms才能完成。我遇到的问题是,在jQuery效果完成页面之前已经回发了,所以jQuery脚本在中途停止了。有没有什么方法可以延迟回发,然后进行手动回发?

3 个答案:

答案 0 :(得分:3)

可以提供一个仅在滑动完成时执行的滑动功能:

formDiv.slideUp('normal', function () {
    $(form).submit();
  });

答案 1 :(得分:0)

您可以在slideUp动画的回调函数中调用加载/重新加载页面。

类似的东西:

$("#myElement").click(function() {
    $("#otherElement").slideUp(600, function() {
        // $("#form").submit(); // or
        // window.location.assign("mypage.aspx");
    });
})

如果您可以发布您的代码,我可以更详细地向您展示。

答案 2 :(得分:0)

您可以使用return false阻止PostBack事件。然后使用正确的LinkBut​​ton名称__doPostBack UniqueID调用<script type="text/javascript"> function myFunction() { //do stuff setTimeout(function () { delayedPostBack(); }, 1000); } function delayedPostBack() { __doPostBack('<%= LinkButton1.UniqueID %>', ''); } </script> <asp:LinkButton ID="LinkButton1" runat="server" OnClientClick="myFunction(); return false;" OnClick="LinkButton1_Click">LinkButton</asp:LinkButton> 手动调用按钮的PostBack。

<Style x:Key="myButtonStyle" ... >