2013-04-22 32 views
3

我的工作和MVC4并返回对象列表以查看JSON。实际上,View会对Controller进行Ajax调用以检索数据。我需要维护该对象的队列并在我的页面上显示它们,以便每个对象都将显示10秒,然后它将被替换为队列中的第二个对象。我使用下面的代码,以使一个Ajax调用保持队列中的JavaScript

function GetData() { 
    $.get("http://localhost:45533/Home/GetData/", function (data) { 
     ProcessData(data); 
     // Here i need to add [data] to Queue 
    }); 
} 

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

$("#fetchBtn").click(function() { 
    // Here i need to get the next object in data from Queue 
}); 

目前我使用按钮,点击刷新。任何人都可以建议我如何维护返回的数据队列?

+2

看看'array.push()'和'array.shift()' – Archer 2013-04-22 14:01:18

回答

0

尝试......

var arData = []; 

function GetData() { 
    $.get("http://localhost:45533/Home/GetData/", function (data) { 
     ProcessData(data); 
     // Here i need to add [data] to Queue 
    }); 
} 

function ProcessData(data) { 
    arData.push(data) // add it to the end of the array 
    $("#myDiv").append(data.Name+ "<br/>"); 
} 

$("#fetchBtn").click(function() { 
    // Here i need to get the next object in data from Queue 
    var data = arData.shift(); // get the first item of the array 
}); 

arData.push(data)增加data到数组的末尾,而arData.shift()返回数组中的第一项,并在同一时间删除。

+0

Lol在-1没有理由。这正是要求的。 – Archer 2013-04-22 14:07:18

+0

我还没有做过什么-1?也许在看你的代码的时候,它不知何故被点击 – InTheWorldOfCodingApplications 2013-04-22 14:28:58

+0

不要担心队友 - 我不认为这是你。我上周因与他们不同意而对某人感到不满,自那以后,他们一直在低调地对我表示不满。无论如何,Admin都会给我奖励点数。 – Archer 2013-04-22 14:42:50