2013-08-16 93 views
0

JSON回調函數只返回格式化日期。根據給定的日期,我必須建立一個樹狀結構,它將分開不同的年份,月份和日期。在回調中獲得的每個日期都包含在樹中。從json回調渲染樹視圖

我已經寫類似下面的ServiceSucceedCallBack:

     var daty = ''; 
         var roczniki = ''; 
         var miesiace = ''; 
         var dni = ''; 
         for (var i in result.Content) { 
          roczniki += '<ol id="lata">' + result.Content[i].getFullYear() + '</ol>'; 
          miesiace += '<ol id="miesiace"><li>' + (result.Content[i].getMonth() + 1) + '</li></ol>'; 
          dni += '<ol id="dni"><li>' + result.Content[i].getDate() + '</li></ol>'; 
         } 
         var $st = $('#toolLeft'); 
         $st.append(roczniki); 
         $('#lata').append(miesiace); 
         $('#miesiace').append(dni); 

它gaves樹視圖,但每日期被寫入到第一個節點(首次發現年)和第二個問題是,我不知道如何省略數據重複。我的意思是,如果某年在樹中有一個位置,那麼與同年的另一個日期應該是相同的節點級別,不會創建新的...

回答

0

它給出了樹形視圖,但每個日期被寫入的第一個節點

使用JSON.stringify建立一個DOM,在這個問題:

Javascript: Using reviver function, I seem can't get to alter all the keys, while concating the numbers

如果某一年有樹的地方,T韓另一個日期同年應該去同一個節點的水平,沒有創造新的

使用循環插入每個日期作爲對象的字面的關鍵,比如foo,然後用JSON.parse刪除重複鍵。這裏有一個例子:

var foo = {"2000-01-01":"good", "2001-09-11":"bad", "2000-11-02":"ugly", "2000-01-01":"jetson"} 
var bar = JSON.parse(JSON.stringify(foo)) 
var baz = JSON.stringify(bar)