同时加载多个 $.ajax 调用

Load multiple $.ajax calls simultaneously

本文关键字:ajax 调用 加载      更新时间:2023-09-26

>我在一个页面中有 3 个 $.ajax 请求,该请求从服务器获取 JSON 内容并填充三个单独的div。这三个div中的内容非常大,因此加载所有内容需要一段时间。此外,这些 ajax 调用是在页面加载时调用的,因此如下所示:

 $(document).ready(function () {
        $.ajax({
            type: 'POST',
            url: "/controller/action",
            dataType: 'json',
            traditional: true,
            async: false,
            success: function (data) {
                //fill content in div 1
            }
        });
        $.ajax({
            type: 'POST',
            url: "/controller/action2",
            dataType: 'json',
            traditional: true,
            async: false,
            success: function (data) {
                //fill content in div 2
            }
        });
        $.ajax({
            type: 'POST',
            url: "/controller/action3",
            dataType: 'json',
            traditional: true,
            async: false,
            success: function (data) {
                //fill content in div 3
            }
        });
});

我最大的问题是:

  1. 如何首先使页面加载(以及链接等元素的功能)
  2. 之后,同时加载这三个 ajax 脚本。所以不是调用 ajax1、ajax2、ajax3;它同时调用它们。

多谢!钟表机构

  1. 页面将在触发 ajax 调用之前加载。
  2. 如果将 async 设置为 true,它们将同时触发。

页面将首先加载,您的函数将在准备就绪后执行。

要使 GUI 响应同时执行 ajax 请求,请删除 async:false 选项。

您可以将此代码移动到 $(document).load( ...)。

并且3个呼叫将同时开始。他们的完成时间不保证。