<script>
Ext.onReady(function(){
var root=new Ext.tree.AsyncTreeNode({
id:'0',
text:'所有分类'
});
var data=new Ext.tree.TreeLoader({url:'_tree_json.php'});
var tree=new Ext.tree.TreePanel({
renderTo:'test',
root:root,
loader:data,
width:300
});
data.on('beforeload',function(treeLoader,node){
this.baseParams.id=node.attributes.id;
},data);
});
</script>
<div id="test"></div>
服务端的php代码:
<?php
require("conn.php");
$father_id=$_POST['id'];
function _count($father_id){
$count_req=mysql_query("select count(id) as count from kind where father_id=$father_id");
$count_num=mysql_fetch_array($count_req);
return $count_num['count'];
}
$count=_count($father_id);
$return=mysql_query("select * from kind where father_id=$father_id");
echo "[";
$i=1;
while ($req=mysql_fetch_array($return)) {
$id=$req['id'];
$name=$req['name'];
if (_count($id)>0) {
echo "{
id: $id,
text: '$name',
leaf: false
}";
}else {
echo "{
id: $id,
text: '$name',
leaf: true
}";
}
if ($i<$count) {
echo ",";
}
$i++;
}
echo "]";
?>
分享到:
相关推荐
当用户展开节点时,会触发加载子节点的操作。 5. **服务器端处理**: 服务器端需要提供一个接口,接收请求并返回对应节点的子节点数据。返回的JSON数据格式需要匹配Tree Store的`reader`配置。 6. **监听事件**: ...
4. **异步加载数据**:当用户展开树形菜单的某个节点时,ZTree会自动触发异步请求,调用DWR中的后台方法获取子节点数据。后台处理完毕后,将结果返回给前端。 5. **接收并渲染数据**:前端接收到数据后,ZTree会...
在这个例子中,当用户点击一个未展开的节点时,`itemclick`事件会被触发,进而调用`store.loadNode(record)`来异步加载子节点。服务器端的`loadSubNodes.php`应返回一个包含子节点数据的JSON对象,其结构为`{nodes: ...
通常,我们会采用异步加载的方式,即每次用户点击某个节点时,后台再生成该节点的子节点,前台再将其加载出来。但是,这种方式有一个缺点,即用户需要等待服务器响应,这会影响用户体验。 那么,有没有一种方法可以...
### Ext.ux.tree.TreeGrid 异步加载知识点详解 #### 一、Ext.ux.tree.TreeGrid简介 在ExtJS框架中,`Ext.ux.tree.TreeGrid`组件是一种结合了树形结构与表格显示特性的控件,适用于展示具有层级关系的数据。通过...
树组件可以通过配置异步加载来优化性能,当用户展开一个节点时,才去请求该节点的子节点数据。 AJAX(Asynchronous JavaScript and XML)是构建现代Web应用的关键技术之一,它允许在不刷新整个页面的情况下与服务器...
异步加载树型是 ExtJS Tree 的一个重要特性,允许只在需要时动态加载子节点,从而提高页面的加载速度和用户体验。 异步加载通常通过 AJAX 请求实现,只有当用户展开一个节点时,才会向服务器请求该节点的子节点数据...
4. **TreeLoader**:负责实际的异步加载操作,它会触发Ajax请求获取子节点。可以配置`nodeParam`属性,告诉服务器请求的是哪个节点的子节点。 5. **UI 自定义**:因为下拉树需要与下拉框结合,所以可能需要自定义`...
异步加载更常见,它在后台进行,不会阻塞用户界面。同步加载则会等待数据加载完成后再更新界面,一般只在数据量较小或有特定需求时使用。 8. **优化技巧**:为了进一步提高性能,可以考虑缓存已加载的节点,避免...
在`PageManage.aspx.cs`中,你可以监听这些事件并编写相应逻辑,比如点击节点后弹出详情窗口或者展开节点前加载子节点数据。 6. **异步加载实现**:在EXT.NET中,`TreePanel`的`AutoLoad`属性设置为`false`可禁用...
如果需要动态加载子节点,可以使用`AsyncTreeNode`和`TreeLoader`来实现。在上面的示例中,已经使用了`AsyncTreeNode`作为根节点,并且配置了一个`TreeLoader`来加载XML数据。这样,当用户展开某个节点时,系统会...
EXT树的每个节点都是一个`Ext.tree.Node`对象,包含ID、文本、子节点等属性。无限级树意味着树的层级可以无限深,每一层都可以有任意数量的子节点。这样的结构在处理大型数据集时尤为有用,因为一次性加载所有数据...
7. **异步加载**:对于大数据量的树形菜单,可以采用异步加载策略,只在需要时加载子节点,提高应用性能。 8. **多选与复选**:通过`selModel`配置,你可以实现树形菜单的多选或单选功能,甚至可以添加复选框来支持...
4. 异步加载(Lazy Loading):EXT Tree支持延迟加载,即只有在节点被展开时才加载其子节点数据,这样可以显著减少初次加载的时间。 5. 树形网格(TreeGrid):EXT还提供了结合了表格和树结构的TreeGrid组件,可以...
- 动态加载:使用`loader`配置项,可以在需要时异步加载子节点。 - 拖放操作:通过`ddGroup`和`enableDragDrop`配置项,可以启用拖放功能,实现节点的移动和排序。 - 节点监听:可以监听节点的各种事件,如`...
EXT2.0通过异步加载数据来实现动态性,只在需要时加载树节点,这减少了初次加载时的数据量,提高了页面响应速度。 分页是另一种优化数据展示和处理的方法,尤其适用于处理大量数据的情况。EXT2.0提供了分页网格组件...
- `nodeType`:定义节点类型,对于动态加载,通常设置为`'async'`,表示异步加载子节点。 - `defaultRootId`:默认根节点的ID,如果没有提供,则会自动创建一个。 - `loadMask`:是否在加载数据时显示遮罩,提升...
对于异步加载,你需要配置树节点的`expandAction`,通常设置为`'load'`,表示展开节点时加载子节点。同时,配置`loader`对象,设置其`url`属性为JSP页面的URL,`dataType`通常为`'json'`,表示数据类型为JSON。 5....
而异步加载则是在用户滚动或展开节点时才请求并加载相关的子节点,显著减少了初始加载时间,提升了用户体验。 在Ext Js 2中,实现异步树的关键是使用`TreeLoader`对象。这个对象负责与服务器进行通信,获取并解析...
- **动态加载**:如果数据量较大,可以设置`async: true`,并配合`load`方法实现按需加载子节点。 - **节点操作**:添加、删除、移动节点可以通过`appendChild`、`remove`、`move`等方法实现。 5. **使用EXT GWT...