Jquery ajax when

Jquery ajax when

本文关键字:when ajax Jquery      更新时间:2023-09-26

我使用jquery等待,直到ajax函数完成,然后在测试div中发布函数的结果。我使用间隔每5秒重复这个过程。我得到的结果是未定义的,然后json元素的id。

这是我的代码。
shortWVCInterval = setInterval(defferedAjax, 5000);
GLB_VAR = "None";
function defferedAjax(){
    $.when(checkAjax()).done(function(){
    $('#test').append(GLB_VAR.id + " - ");
  });
}
function checkAjax(){
    var url = "https://jsonplaceholder.typicode.com/posts";
  $.ajax({
        type: "POST",
        url: url,
        dataType: 'json',
        success: function(data) {
            GLB_VAR = data;
        }
    });
}
https://jsfiddle.net/Lh2q5c4t/

如何获得第一个间隔上的Id ?

这里是工作代码:

shortWVCInterval = setInterval(defferedAjax, 5000);
GLB_VAR = "None";
function defferedAjax(){
    $.when(checkAjax()).done(function(){
    $('#test').append(GLB_VAR.id + " - ");
  });
}
function checkAjax(){
     return $.ajax({
        type: "POST",
        url: "https://jsonplaceholder.typicode.com/posts",
        dataType: 'json',
    success: function(data) {
        GLB_VAR = data;
    }
});
}
https://jsfiddle.net/Lh2q5c4t/3/

编辑:你必须添加"return $。return语句停止函数的执行,并返回该函数的一个值。