2016-11-26 111 views
1

我在jQuery中有一個幻燈片界面,它在每張新幻燈片上加載一個JSON文件。 JSON文件使用順序數值(1.json,2.json ..)命名,以確定幻燈片的順序。我希望這是對象(「索引位置」)中的值而不是文件的名稱。按對象值加載JSON文件

我的問題是我將如何以相同的方式順序加載這些文件 - 但不是通過文件名加載順序,通過索引位置加載它們?

我的預感是,這意味着創建一個所有文件的「索引位置」值的數組,並將每個索引與文件名相關聯,但也許有一個更簡單/更有效的方法?

謝謝

+0

要麼你可以用'array'或基於索引對象映射文件中的數據; – itzmukeshy7

回答

2

可以讀取JSON前的內容(閱讀「index-position」)並將其設置爲全局數組。

喜歡的東西:

var slides = []; 
$.getJSON("ajax/fileName.json", function(data) { 
    var index = data["index-position"]; 
    slides[index] = data; 
} 
1

沒有神奇的解決方案。您必須以某種格式將文件連接到索引(例如["1.json", "2.json"])。你可以把這些信息在其他的外部文件,並使用它,或者你可以通過它在你的代碼硬編碼,這樣節省了網絡請求:

var files = ["1.json", "2.json"]; 
1
var obj = {}; 


for (i = 0; i<10; i++) 
{ 

obj[i] = i + ".json"; 
} 
console.log(obj[0], obj[1]); 

//0.json,1.json