如图所示,在所有报表中,只有“用户自定义报表”是动态异步加载的,这里前台的js代码为(只显示关键代码):
。。。。。
。。。。。
usernode= new Ext.tree.AsyncTreeNode( {
id:"custom",
text: '用户自定义报表'
});
。。。。。
loader = new Ext.tree.TreeLoader({dataUrl:"/SanXiaMS/servlet/TreeServlet2"});
loader.on('beforeload',function(treeLoader,node){
node.attributes.children = false;
this.baseParams.dataUrl="/SSS/TT/TreeServlet?nodeId="+node.id;//后台用来获取参数的地址
this.baseParams.nodeId=node.id;
},loader
);
var treePanel = new Ext.tree.TreePanel({
lines : true,
loader:loader, //这个一定不能忽略
border : false,
autoScroll : true,
containerScroll: true,
root : root
});
//给自定义报表的叶子节点添加监听事件
treePanel.addListener('click', TreeClick);
function TreeClick(node, e) {
if (node.leaf) {
main.location.href="CustomView.html"; //超链接,让iframe名字为 main的页面跳转
}}
这样在点击“基本属性”等报表就可以在右边出现新的页面了。
分享到:
相关推荐
当用户展开节点时,会触发加载子节点的操作。 5. **服务器端处理**: 服务器端需要提供一个接口,接收请求并返回对应节点的子节点数据。返回的JSON数据格式需要匹配Tree Store的`reader`配置。 6. **监听事件**: ...
4. **异步加载数据**:当用户展开树形菜单的某个节点时,ZTree会自动触发异步请求,调用DWR中的后台方法获取子节点数据。后台处理完毕后,将结果返回给前端。 5. **接收并渲染数据**:前端接收到数据后,ZTree会...
异步加载,也称为懒加载或需求加载,意味着当用户滚动、展开节点或者进行其他交互时,只加载当前需要的数据,而不是一次性加载整个树。这在处理大量数据或深层级结构时特别有用,因为它减少了初次加载时的网络传输量...
如果 `isLeaf` 为 false,但 `children` 未定义或为空,那么在展开节点时就会触发异步加载。 8. **Progressive Enhancement**:异步加载可以与分页结合,每次只加载一部分子节点,提供更好的性能和用户体验。可以...
树组件可以通过配置异步加载来优化性能,当用户展开一个节点时,才去请求该节点的子节点数据。 AJAX(Asynchronous JavaScript and XML)是构建现代Web应用的关键技术之一,它允许在不刷新整个页面的情况下与服务器...
这里定义了一个`TreePanel`,它使用`AsyncTreeNode`作为根节点,并配置了异步加载器(`TreeLoader`),该加载器指向了一个XML文件,该文件包含了树形菜单的具体数据。 #### 4. 添加链接及事件处理 为了让树形菜单中...
4. **TreeLoader**:负责实际的异步加载操作,它会触发Ajax请求获取子节点。可以配置`nodeParam`属性,告诉服务器请求的是哪个节点的子节点。 5. **UI 自定义**:因为下拉树需要与下拉框结合,所以可能需要自定义`...
这个类负责从服务器获取子节点数据,当用户展开树的某个节点时,会触发加载事件。这种机制对于大型数据集尤其有用,因为它避免了一次性加载所有数据导致的性能问题。 源码中可能包括以下几个关键部分: 1. **...
为了在节点展开时触发异步加载,需要监听`beforeexpand`事件,并在回调函数中调用`store.load()`方法,传递必要的参数如`node`对象。 6. **JSP响应处理** JSP页面应处理HTTP请求,根据请求参数(如父节点ID)查询...
EXT2.0通过异步加载数据来实现动态性,只在需要时加载树节点,这减少了初次加载时的数据量,提高了页面响应速度。 分页是另一种优化数据展示和处理的方法,尤其适用于处理大量数据的情况。EXT2.0提供了分页网格组件...
EXT树的每个节点都是一个`Ext.tree.Node`对象,包含ID、文本、子节点等属性。无限级树意味着树的层级可以无限深,每一层都可以有任意数量的子节点。这样的结构在处理大型数据集时尤为有用,因为一次性加载所有数据...
- `nodeType`:定义节点类型,对于动态加载,通常设置为`'async'`,表示异步加载子节点。 - `defaultRootId`:默认根节点的ID,如果没有提供,则会自动创建一个。 - `loadMask`:是否在加载数据时显示遮罩,提升...
通过这种方式,Ext Js 2的异步树功能使得开发者能够构建高效、响应式的树形结构应用,尤其适用于需要动态加载大量数据的场景。在实际项目中,还可以结合分页、搜索、拖放等功能,增强树的交互性和实用性。
5. **数据绑定**:树形控件的数据通常是动态加载的,EXT使用Store来管理这些数据,可以与服务器进行异步通信,更新或获取树的结构和状态。 6. **自定义渲染**:EXT允许开发者自定义节点的显示样式和行为,比如通过...
在Ext JS中,可以通过`TreeLoader`来实现树节点的异步加载。本代码中使用了`TreeLoader`组件,并为其指定了加载数据的URL(`showpath`)。当需要加载某个节点时,会触发`beforeload`事件,在此事件中设置请求参数(`id`...
EXT树的节点可以是异步加载的,这意味着初始加载时只加载根节点,子节点在需要时按需加载。`TreeLoader`允许指定数据接口,通过`dataUrl`来获取JSON格式的树数据。 在权限管理中,EXT树经常需要配合复选框功能,...
在实际项目中,可能还需要考虑其他因素,比如权限控制、异步加载、拖放操作等,以满足更复杂的需求。 在压缩包文件"ExtRightMenuTree"中,可能包含了实现这一功能的示例代码、样式文件、配置文件等。通过分析和学习...
5. **事件监听**:EXT Tree支持多种事件,如`itemclick`(点击节点时触发)、`beforeexpand`(节点展开前触发)、`beforecollapse`(节点折叠前触发)等。可以通过监听这些事件实现交互逻辑。 6. **拖放功能**:EXT...
开发者可能使用HTML来构建基本的页面结构,并通过JavaScript(EXT3.0)来处理用户的交互事件,如点击树节点时触发的异步加载或更新操作。 总的来说,"EXT3.0+Struts2.0 树控件代码示例"是一个完整的Web开发案例,...
3. **修改(Modify)**:在EXT2.0中编辑节点内容并保存时,会触发更新请求,Servlet收到请求后,找到需要修改的记录,更新其内容,并返回更新后的数据。 4. **查询(Query)**:EXT2.0的树结构可能需要根据某些条件...