DHTMLX Docs & Samples Explorer
Table of Contents

TreeGrid Initialization

dhtmlsTreeGrid can be loaded only from XML or JSON formats.

 
Script initialization of the treegrid is the same as for the grid. All the user should do is to decide what column should have tree structure and use "tree" eXcell for it.

XML

XML structure should be as follows:

    <?xml version="1.0" encoding="UTF-8"?>
    <rows parent="h0"> 
        <userdata name="gud1"> 
            userdata value 1
        </userdata> 
        <row id="h523" selected="1" call="1" xmlkids="1"> 
            <userdata name="hondaUD"> 
                userdata value for honda
            </userdata> 
            <cell image="folder.gif">Honda</cell> 
            <cell>...</cell> 
            <cell>...</cell> 
        </row>
    </rows>

All XML tags and attributes are same as for dhtmlxGrid. The difference is in the following:

  • <rows> element can have the following attribute with treeGrid:
    • parent - (for dynamical loading) id of the row that is parent for the items under current rows;
  • <row> has the following TreeGrid specific attributes:
    • xmlkids - (for dynamical loading) this row has/doesn't have child rows;
    • open - specifies if a row is expanded (for TreeGrid);
    • style - specifies css style for the current row.
  • <cell> element also possesses TreeGrid specific parameter:
    • image - optional (default is leaf.gif) for a tree column; image name to use as tree node icon.

JSON

To load treeGrid from JSON format you should include dhtmlxgrid_json.js file to your page.
JSON format for TreeGrid:

{
rows:[
    { id:'1001', 
     data:[
      {"value":"row A","image":"folder.gif"},
      "A Time to Kill",
      "John Grisham",
      "12.99",
      "1",
      "05/01/1998"],
    rows:[
	    { id:'sub_1001', 
	 data:[
	      "subrowA",
		  "Blood and Smoke",
	      "Stephen King",
	      "0",
	      "1",
	      "01/01/2000"
		  ]
		  },
	    { id:'sub_1002', 
	 data:[
	      "subrowB",
	      "Blood and Smoke",
	      "Stephen King",
	      "0",
	      "1",
	      "01/01/2000"] }
    ]
 },
   { id:'1002', 
     xmlkids:'1',
 data:[
      "row B",
      "The Green Mile",
      "Stephen King",
      "11.10",
      "1",
      "01/01/1992"] }
      ]
}