Yii框架扩展ztree【目录树】配置详细说明(继承自zii.widgets.jui.CJuiWidget)
属性名:$scriptFile
说明:目录树需要加载的javascript库文件列表
属性名:$iconsCss
说明:开启zTreeIcons样式 (需要支持IE6的话,谨慎开启此项)
属性名:$cssFile
说明:目录树需要加载的css样式文件列表
属性名:$data
说明:目录树所需要的数据
属性名:$width
说明:容器宽度
属性名:$height
说明:容器高度
属性名:$onlySon
说明:是否只允许选择子项
属性名:$backgroundId
说明:背景容器的ID名
属性名:$backgroundTagName
说明:背景容器(默认为DIV,为空则没有背景层)
属性名:$backgroundHtmlOptions
说明:背景容器HTML选项
属性名:$baseUrl
说明:assets目录地址
属性名:$model
说明:待进行CRUD操作所需要的模型类
属性名:$criteria
说明:查询条件(设置model属性后生效)
属性名:$treeNodeNameKey
说明:树形节点列名键名(默认为name)
属性名:$treeNodeKey
说明:树形节点ID键名
属性名:$treeNodeKey
说明:树形节点ID键名
属性名:$treeNodeParentKey
说明:树形节点ID键名
属性名:$isSimpleData
说明:是否为普通数据(详情请参考ztree的javascript类库说明)
属性名:$options
说明:该属性继承于父类CJuiWidget,JS类库的其他配置信息都可以设置在这个属性之中
ztree扩展包使用方法:
$this->widget('path.ztree.zTree',array(
'treeNodeNameKey'=>'name',
'treeNodeKey'=>'id',
'treeNodeParentKey'=>'pId',
'options'=>array(
'expandSpeed'=>"",
'showLine'=>true,
),
'data'=>array(
array('id'=>1, 'pId'=>0, 'name'=>'目录1'),
array('id'=>2, 'pId'=>1, 'name'=>'目录2'),
array('id'=>3, 'pId'=>1, 'name'=>'目录3'),
array('id'=>4, 'pId'=>1, 'name'=>'目录4'),
array('id'=>5, 'pId'=>2, 'name'=>'目录5'),
array('id'=>6, 'pId'=>3, 'name'=>'目录6')
)
));
定义数据的两种方式:
1、设置model属性后(model类名或者model对象):
数据获得方式则为$model->model()->findAll($this->criteria)
例如:
1)
array(
'model'=>'tree', //tree为模型类名称
)
2)
array(
'model'=>$model, //此处为一个model对象(需要是CModel的子类)
)
2、设置data属性
数据可以为数组,或者model的数据集(数组形式)
例如:
1)
array(
'data'=>array(
array('id'=>1, 'pId'=>0, 'name'=>'目录1'),
array('id'=>2, 'pId'=>1, 'name'=>'目录2'),
array('id'=>3, 'pId'=>1, 'name'=>'目录3'),
array('id'=>4, 'pId'=>1, 'name'=>'目录4'),
array('id'=>5, 'pId'=>2, 'name'=>'目录5'),
array('id'=>6, 'pId'=>3, 'name'=>'目录6')
)
)
2)
array(
'data'=>tree::model()->findAll()
)
提醒:
1、iconsCss属性请谨慎开启,在IE6下效率会比较低
2、width属性不填的话,背景层宽度与containerId宽度一样
补充:
ztree的JS类库地址:http://www.baby666.cn/v3/main.php#_zTreeInfo