2重新加载页面之前,AJAX调用没有完成执行

时间:2017-05-10 15:12:13

标签: javascript jquery ajax

以下AJAX调用工作(注意第一个调用第二个调用成功),但是在第二个调用成功时它重新加载浏览器,并且不会立即显示更改而无需用户手动重新加载页面第二次。有什么方法可以解决这个问题?

 self.assign = function () {

        var data = {
            selectedViewsForClient: self.selectedViewsForClient().toString(),
            volPoolIds: populateSelectedVolPoolIds().toString()
        };

        var jsonData = ko.toJSON(data);

        $.ajax({
            url: "../../act/ClientView/assign",
            type: "POST",
            contentType: "application/json; charset=utf-8",
            cache: false,
            data: jsonData,
            success: self.removeViews,
            error: handleEditViewsErrors
        });                        
    };

    self.remove = function () {

        var data = {
            selectedViewsForClient: self.selectedViewsAssignedToCandidateForClientUser().toString(),
            volPoolIds: populateSelectedVolPoolIds().toString()
        };

        var jsonData = ko.toJSON(data);

        $.ajax({
            url: "../../act/ClientView/remove",
            type: "POST",
            contentType: "application/json; charset=utf-8",
            cache: false,
            data: jsonData,
            success: location.reload(),
            error: handleEditViewsErrors
        });
    };        

2 个答案:

答案 0 :(得分:0)

location.reload()从缓存重新加载页面,强制页面从服务器刷新,使用location.reload(true)true强制服务器刷新

答案 1 :(得分:-1)

我在第二次通话中添加了async: false,它就像一个魅力!