首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >jquery + asp.net延迟回发

jquery + asp.net延迟回发
EN

Stack Overflow用户
提问于 2011-12-06 17:17:29
回答 3查看 1.3K关注 0票数 1

我想在LinkButton点击上实现一个slideUp jQuery效果,然后在页面上回发。这个效果需要600毫秒才能完成。我遇到的问题是,在jQuery效果完成之前,页面已经做了回发,所以jQuery脚本在中途停止了。除了手动回发之外,还有什么方法可以延迟回发吗?

EN

回答 3

Stack Overflow用户

发布于 2011-12-06 17:20:43

可以提供仅在滑动完成时才执行的slideup函数:

代码语言:javascript
运行
复制
formDiv.slideUp('normal', function () {
    $(form).submit();
  });
票数 3
EN

Stack Overflow用户

发布于 2011-12-06 17:19:49

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

类似于:

代码语言:javascript
运行
复制
$("#myElement").click(function() {
    $("#otherElement").slideUp(600, function() {
        // $("#form").submit(); // or
        // window.location.assign("mypage.aspx");
    });
})

如果你可以发布你的代码,我可以向你展示更多的细节。

票数 0
EN

Stack Overflow用户

发布于 2017-01-12 21:17:46

您可以使用return false阻止PostBack事件。然后手动调用按钮的PostBack,方法是使用正确的LinkButton名称调用__doPostBack,方法是使用它的UniqueID

代码语言:javascript
运行
复制
<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>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8397545

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档