3 Stimmen

Die Verwaltung einer Warteschlange in JavaScript

Ich arbeite mit MVC4 und gib eine Liste von Objekten als Json an die Ansicht zurück. Tatsächlich ruft die Ansicht einen Controller über Ajax auf, um Daten abzurufen. Ich muss eine Warteschlange dieses Objekts pflegen und sie auf meiner Seite so anzeigen, dass jedes Objekt für 10 Sekunden angezeigt wird und dann durch das zweite Objekt in der Warteschlange ersetzt wird. Ich verwende den folgenden Code, um einen Ajax-Aufruf zu tätigen

function GetData() {
    $.get("http://localhost:45533/Home/GetData/", function (data) {
        ProcessData(data);
        // Hier muss ich [data] zur Warteschlange hinzufügen
    });
}

function ProcessData(data) {
    $("#myDiv").append(data.Name+ "");
}

$("#fetchBtn").click(function() {
    // Hier muss ich das nächste Objekt in [data] aus der Warteschlange holen
});

Derzeit verwende ich den Klick auf die Schaltfläche, um es zu aktualisieren. Kann mir jemand vorschlagen, wie ich eine Warteschlange der zurückgegebenen Daten verwalten kann?

1voto

Versuchen Sie dies...

var arData = [];

function GetData() {
    $.get("http://localhost:45533/Home/GetData/", function (data) {
        ProcessData(data);
        // Hier muss [data] zur Warteschlange hinzugefügt werden
    });
}

function ProcessData(data) {
    arData.push(data)   //  füge es ans Ende des Arrays hinzu
    $("#myDiv").append(data.Name+ "");
}

$("#fetchBtn").click(function() {
    // Hier muss das nächste Objekt in data aus der Warteschlange abgerufen werden
    var data = arData.shift();  //  bekomme das erste Element des Arrays
});

arData.push(data) fügt data am Ende des Arrays hinzu, während arData.shift() das erste Element des Arrays zurückgibt und gleichzeitig entfernt.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X