jquery Schlaf nicht ausführen, ajax-Aufruf

Habe ich ein Ajax-request warten auf die Antwort aus einem anderen Prozess.

function test() {
    var flag = 0;
    while (flag === 0) {
        $.ajax({
            url: "cs/CheckForProcess",
            async: false,
            success: function(data) {
                if (data !== 'NotReady') {
                    $('#results').html(data);
                    flag = 1;
                } else {
                    $('#results').html('<h1>Processing...</h1>');
                    setTimeout(function() {
                    }, 6000);
                }
            }
        });
    }
}

das problem ist, dass die setTimout nicht funktioniert obwohl ich sehe im debug-Modus, dass die else-Bedingung ausgeführt wird.


BEARBEITEN:
ich will den nächsten ajax-request gesendet werden, nur 6 Sekunden nach der überprüfung der Prozess ist noch nicht bereit.

was bin ich?
Thx.

  • Es gibt nichts in Ihrem setTimeout Funktion. Was wollen Sie da tun?
  • nur schlafen....ist das nicht die standard-syntax für das schlafen?
  • setTimeout ist eine asynchrone Funktion. Es tut nicht pause, Ihr Skript. Ihr Skript wird weiterhin ausgeführt (und 6000ms später Ihre setTimeout callback-Funktion wird ausgeführt.
  • Können Sie uns sagen, genau das, was Sie zu tun versuchen ?
  • Was genau wollen Sie tun?
Schreibe einen Kommentar