単一のディレクトリとその内容を表示する単純なツリーに EXT JS を使用しています。何らかの理由で、私は彼らのすべての例を調べましたが、私が望むものを複製することはできません. ディレクトリ構造に基づいて JSON オブジェクトを作成し、EXT JS ツリーにフィードできるようにしたいと考えています。
ディレクトリを開き、親ノードを作成してから子ノードを作成しようとするスクリプトを次に示します。このディレクトリ内には、.xml ファイルのみがあります。ディレクトリを開いてファイルのノードを作成するだけで機能するようになりましたが、親またはルートレベルが表示されず、気の利いた折りたたみ効果が失われます。
これが私のコードです:
if($handler = opendir($dir."/$market_desc"))
{
while (($sub = readdir($handler)) !== FALSE)
{
if ($sub !== "." && $sub !== ".." && $sub !== ".svn")
{
if(is_file($dir."/$market_desc/".$sub))
{
$subDir[] = array(
'text' => $sub,
'id' => $sub,
'checked' => false,
'leaf' => true,
'cls' => 'file'
);
}
}
}
$listDir[] = array(
'text' => $market_desc,
'id' => $market_desc,
'checked' => false,
'cls' => 'folder',
'children' => array($subDir)
);
closedir($handler);
unset($handler);
ディレクトリ構造は 1 レベルの深さしかなく、ルート レベルにいくつかのファイルがあり、その後にファイルを含む多数のディレクトリが続きますが、1 レベル以上下に行くことはありません。
私は本業の php バックエンド開発者なので、javascript と EXT が必要とするこの JSON の正しい構成に関しては、初心者で申し訳ありません。