2015-05-03 31 views
-1

我正在嘗試使用d3.js樹佈局,它僅使用特定格式的輸入json。例如可以將xml轉換爲任何json格式

{ 
"name": "Base", 
"children": [ 
    { 
     "name": "Type A", 
     "children": [ 
      { 
       "name": "Section 1", 
       "children": [ 
        {"name": "Child 1"}, 
        {"name": "Child 2"}, 
        {"name": "Child 3"} 
       ] 
      }, 
      { 
       "name": "Section 2", 
       "children": [ 
        {"name": "Child 1"}, 
        {"name": "Child 2"}, 
        {"name": "Child 3"} 
       ] 
      } 
     ] 
    } 

    ] 
}; 

我也提到這個小提琴例子Modify lines/tooltip on hover 我想知道的是,如果有可能把XML數據轉換成JSON在使用javascript任何格式。

它獲取所生成的xml是如下:

<universe> 
<universename>unique</universename> 
<creator>god</creator> 
<planets> 
    <planetname>earth</planetname> 
    <position>third</position> 
    <countries> 
    <countryname>country-1</countryname> 
    <countrypopulation>xxx</countrypopulation> 
    </countries> 
    <waterbodies> 
    <ocean> 
     <oceanname>pacific</oceanname> 
    </ocean> 
    </waterbodies> 
    <mountains> 
    <mountainname>everest</mountainname> 
    </mountais> 
    </planets> 

<planets> 
    <planetname>jupiter</planetname> 
    <position>fourth</position> 
    <countries> 
    <countryname>country-2</countryname> 
    <countrypopulation>xxx</countrypopulation> 
    </countries> 
    <waterbodies> 
    <ocean> 
     <oceanname>pacific-1</oceanname> 
    </ocean> 
    </waterbodies> 
    <mountains> 
    <mountainname>everest-2</mountainname> 
    </mountais> 
    </planets> 

</universe> 

這個XML數據獲取與0動態創建爲我已經使用jqtree並置於下一個加號按鈕行星節點名稱許多行星節點。

我想在創建一個JSON格式如下

{ 
    "name": "universe", 
    "value_list": [ 
     { 
      "name": "universename", 
      "value": "unique" 
     }, 
     { 
      "name": "creator", 
      "value": "god" 
     } 
    ], 
    "children": [ 
     { 
      "name": "planets", 
      "value_list": [ 
       { 
        "name": "planetname", 
        "value": "earth" 
       }, 
       { 
        "name": "position", 
        "value": "third" 
       } 
      ], 
      "children": [ 
       { 
        "name": "countries", 
        "value_list": [ 
         { 
          "name": "countryname", 
          "value": "country-1" 
         }, 
         { 
          "name": "countrypopulation", 
          "value": "xxx" 
         } 
        ] 
       }, 
       { 
        "name": "waterbodies", 
        "children": [ 
         { 
          "name": "ocean", 
          "value_list": [ 
           { 
            "name": "oceanname", 
            "value": "pacific" 
           } 
          ] 
         } 
        ] 
       }, 
       { 
        "name": "mountains", 
        "value_list": [ 
         { 
          "name": "mountainname", 
          "value": "everest" 
         } 
        ] 
       } 
      ] 
     }, 
     { 
      "name": "planets", 
      "value_list": [ 
       { 
        "name": "planetname", 
        "value": "jupiter" 
       }, 
       { 
        "name": "position", 
        "value": "fourth" 
       } 
      ], 
      "children": [ 
       { 
        "name": "countries", 
        "value_list": [ 
         { 
          "name": "countryname", 
          "value": "country-2" 
         }, 
         { 
          "name": "countrypopulation", 
          "value": "xxx" 
         } 
        ] 
       }, 
       { 
        "name": "waterbodies", 
        "children": [ 
         { 
          "name": "ocean", 
          "value_list": [ 
           { 
            "name": "oceanname", 
            "value": "pacific-1" 
           } 
          ] 
         } 
        ] 
       }, 
       { 
        "name": "mountains", 
        "value_list": [ 
         { 
          "name": "mountainname", 
          "value": "everest-2" 
         } 
        ] 
       } 
      ] 
     } 
    ] 
} 
+1

是的......你有特定的問題嗎? –

+0

是的,我有,我會告訴你在一個小detail.i將編輯我的問題 – sugar

+0

當你這樣做,請修復「我」與「我」,如在英語中,沒有詞作爲「我」。他們真的傷了我的眼睛... – ilter

回答