首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使UI更新出现在Jquery .click函数结束之前?

如何使UI更新出现在Jquery .click函数结束之前?
EN

Stack Overflow用户
提问于 2015-10-15 23:20:54
回答 1查看 22关注 0票数 0

我有一个按钮,用于进行一些处理和Ajax调用,所以我在Jquery .click()中这样做了,它工作得很好,但是当我试图使加载旋转器在ajax和.click()代码结束之前不会出现。

因此,我想在.click()开始时启动旋转器,并隐藏ajax的成功,如何做到这一点?

比如:

代码语言:javascript
运行
复制
    $("#ConfirmBTN").click(function () {

    $("#confirmBody").LoadingOverlay("show");
    ... some code
                $.ajax({
                type: 'POST',
                dataType: 'text',
                url: url,
                data: "jsonData=" + jsonData,
                success: function (returnPayload) {
                ..
                    $("#confirmBody").LoadingOverlay("hide");
                },
                error: function (xhr, ajaxOptions, thrownError) {
                    $("#confirmBody").LoadingOverlay("hide");
                },
                processData: false,
                async: false
            });

    }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-15 23:22:55

摆脱async: false。然后单击函数将返回到浏览器的主事件循环,并更新显示。

将任何依赖于AJAX响应的代码移到success:函数中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33160113

复制
相关文章

相似问题

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