質問: csvデータをツリー表示させたい 業務で、webサイトにcsvデータを表示させたいと考えています。 csvデータは、毎日更新されるもので、行数も日々変更されます。 項目の中に「レベル」という項目があり、この「レベル」の値を使って、 ツリー表示出来ないかと考えています。 希望としては、決められたフォルダに決められたファイル名で、 csvデータを置けば、自動的にweb上にツリー表示されるという ことです。 j-query等で、これを実現出来るプラグインが無いか探しているのですが、 なかなか希望に合うものが見つからず、困っています。 (csvをweb表示するものは見つかるのですが、ツリー表示出来る ものが見つかりません) 何か、良い方法があれば、ご教示頂けませんでしょうか? 例 コード レベル 品名 規格 ・・・・ コード レベル 品名 規格 ・・・・ 1234 1 aaa aaa -1234 1 aaa aaa 2345 2 bbb bbb ∟2345 2 bbb bbb 3456 3 ccc ccc ∟3456 3 ccc ccc 4567 3 ddd ddd ∟4567 3 ddd ddd 5678 3 eee eee ∟5678 3 eee eee 6789 4 fff fff ∟6789 4 fff fff 7890 3 ggg ggg ∟7890 3 ggg ggg
回答: ano3様がおっしゃるようにサーバサイドで処理してしまうのが一番確実な方法と思いますが、そういう事情でもなさそうなので... >j-query等で、これを実現出来るプラグインが無いか探しているのですが ano1様がおっしゃるように、ピッタリのライブラリを探すのは難しいように思います。 なさりたいことは比較的簡単で、レベル欄の数に合わせて第1項目の表示をインデントすれば良いだけのように思われます。paddingやmarginを利用してセットしてあげれば実現できそうです。 レベルの上限がわかっているのなら、cssで事前に用意しておいてクラス名で処理してあげても良いですね。 接頭辞的なキャラクタ(あるいは画像?)も同時に追加してあげればよろしいかと。 csvの読み込みをどのようになさろうと計画しているのかはよくわかりませんが、スクリプトで処理するにしても、 1)csvの読み込み~表示までを自作する 2)csvの読み込みはライブラリを利用し、表示部分だけ自作 3)csvの読み込み~表示まではライブラリを利用し、後からインデントだけ修正する といった方法が考えられるかと思います。 2)、3)は汎用的なライブラリが作成されていますので、利用しやすいものを選択して使えばよろしいでしょう。 比較的自作部分の少ない3)を例にとれば、読み込みと表示が終わった時点で、各行(表示がテーブルかどうか不明ですが)について上記のようなインデントの処理を繰り返してあげればよいことになります。 読み込み~表示のライブラリにいろいろな機能(並べ替えとか)が付いていたりすると、その操作後におかしなことになる可能性があるので、シンプルなものを選ぶ必要があるのと、生成される表(ではないかも)の構造を調べるという作業は発生しますが・・・