2011-11-11 8 views
1

JSON形式でデータを保存しています。私はMongoVUEがmondodb書類を提示し、同様の方法で動的なツリー構造としてブラウザに表示できるようにしたいと思います:私はjsTreeと呼ばれる非常に素晴らしいjQueryプラグインを、発見した Screenshot汎用JSONデータのツリー表現をHTMLで作成する方法は?

。残念ながら、JSON文書を処理するには、データには非常に特殊な(冗長で、私の考えでは)構造体が必要です:link。それを使用することは、私のjsonドキュメントの大幅な変更を意味します。私はむしろ、データを厳密に手動で調整することなく自動的にツリーを構築できるツールを探していますが、必要に応じて、ビューにいくつかの修正を適用する可能性があります。

json.bloople.netのツールはテーブルを使用して同様のことを行いますが、複数のレベルのネストされたドキュメントがあるため、出力が非常に膨らんで見えます。さらに、この構造は動的に折り畳まれない。

Java/GroovyでのJSONデータの前処理(または自動化)や純粋なJavaScriptベースのソリューションの両方を含む、適切なツールに関するヒントをご存知でしょうか。

+2

私はあなたの場合、1)jsonオブジェクトをjstreeノードに変換するjavascriptメソッドを作成するか、2)jsonのままにして、ネストされたdivタグを作成して独自のソリューションを作成してみてくださいjqueryの効果、私はそれが難しいとは思わない、と実際には楽しいかもしれない、実際に;-)あなたがあなたのjsonを提供する場合、多分人々はあなたを始めることができます。 – Upgradingdave

答えて

0

これは、htmlでJSON構造のようなツリーを出力する方法の単純な例です。 http://jsfiddle.net/K2ZQQ/1/(白いスペースのブラウザサポートについてはhereを参照)。 JSON.stringifyに2番目のパラメータがreplacer関数であることに注意:代替の関数である場合

http://msdn.microsoft.com/en-us/library/ie/cc836459(v=vs.94).aspx

から、JSON.stringifyは、各メンバーのキーと値に を渡し、関数を呼び出します。戻り値は、元の値の の代わりに使用されます。関数が未定義を返した場合、メンバー は除外されます。ルートオブジェクトのキーは空の文字列です: ""あなたはJSON木のdislpayに任意のさらなる変更を追加する必要がある場合

のでreplacer機能が助けになることがあります。

関連する問題