2013-06-05 53 views
-3

我有一個包含許多複選框的樹表。每個複選框都存儲結構本身。例如/root/entity_child/0/entity_child/1。從這些數據中,我想使用它並從Json數據中讀取Json對象。在這種情況下如何訪問Json數據?

爲了獲得正確的數據,我需要類似mydata.root.entity_child [0] .entity_child [1]。但我不知道如何應用我的原始數據是字符串來獲取我想要的數據。

讓說,我有/root/entity_child/0/entity_child/1串,我怎麼能改造這mydata.root.entity_child[0].entity_child[1] in javascript?

任何想法?

+0

我不知道你的問題是什麼。我們甚至在談什麼語言? –

+0

@NielsKeurentjes我只是javascript – user2335149

+0

但是,你的實際**問題**?你寫了什麼代碼?它有什麼作用?它有什麼作用?你期待什麼輸出? –

回答

0

從你的問題還不清楚,如果你需要得到:

  • mydata.root.entity_child[0].entity_child[1]值,
  • 或者只是字符串"mydata.root.entity_child[0].entity_child[1]"

如果你想要的值,然後就可以分割字符串"/"並循環:

function getValue(path, from){ 
    var splitStr = path.substr(1).split('/'); 
    var val = from; 

    for(var i = 0; i < splitStr.length; i ++){ 
     val = val[splitStr[i]]; 
    } 

    return val; 
} 

getValue('/root/entity_child/0/entity_child/1', mydata); 

或者如果你只想要字符串,那麼你可以使用正則表達式完成所有行:

'mydata' + '/root/entity_child/0/entity_child/1'.replace(/\/([0-9]+)/g, "[$1]").replace(/\//g, '.');