ExtJS4.2动态创建GridPanel工具栏教程
5星 · 超过95%的资源 需积分: 12 86 浏览量
更新于2024-09-13
收藏 52KB DOC 举报
"这篇文档介绍了如何在ExtJS 4.2框架中动态生成一个包含按钮和查询条件的工具栏,特别是在gridPanel中的应用。通过示例代码,展示了如何在视图层和 Toolbar.js 文件中设置组件,并从后台获取数据来构建工具栏。"
在ExtJS 4.2中,动态生成工具栏是一项常见的需求,特别是对于需要根据用户权限或特定场景显示不同功能的界面。在上述例子中,我们看到如何在gridPanel中实现这一功能。首先,我们需要在视图层设置dockedItems属性,这允许我们在组件的顶部或底部添加附加元素,如工具栏和分页栏。
```javascript
this.dockedItems = [
{ xtype: Ext.create('Ext.zc.grid.Toolbar',{//工具栏, url: zc.bp()+'/system/tuser!getToolbar.action' }),
},
{ xtype: 'pagingtoolbar',//分页栏
dock: 'bottom',
displayInfo: true,
store: this.store
}
];
```
在上述代码中,我们创建了一个新的`Ext.zc.grid.Toolbar`实例,它继承自`Ext.toolbar.Toolbar`,并指定了获取工具栏数据的URL。同时,还定义了一个分页栏,用于显示数据的页码信息。
接下来,我们深入到`Toolbar.js`文件,这是一个自定义的工具栏组件。在这个文件中,我们监听了`render`事件,当工具栏渲染完成后,会发送一个Ajax请求到指定的URL获取工具栏的配置数据。
```javascript
listeners: {
render: function(view, eOpts) {
var url = view.url;
Ext.Ajax.request({
url: url,
success: function(response, options) {
var text = response.responseText;
var data = Ext.JSON.decode(text).data;
Ext.each(data, function(item) {
var xtype = item.xtype;
if (xtype == 'text') {
view.add(item.text);
} else {
view.add(item);
}
});
}
});
}
}
```
在`success`回调函数中,我们解析服务器返回的JSON数据,然后遍历每个条目,如果条目类型是`text`,则将其作为文本添加到工具栏;否则,直接将整个条目添加到工具栏。这样,我们就能根据后端返回的数据动态构建工具栏,包括按钮和其他组件。
最后,提到了在后台调用创建工具栏的方法,这个方法应该负责生成用于构建工具栏的JSON数据,但具体的实现没有在此给出。通常,这个方法会根据用户权限或其他业务逻辑生成相应的工具栏配置。
总结来说,这个例子展示了如何在ExtJS 4.2中利用组件系统和异步数据交互动态生成工具栏,使得开发人员能够灵活地控制界面的功能展示。这种做法提高了代码的可维护性和适应性,同时也降低了前端与后端之间的耦合度。
2018-12-01 上传
2023-06-07 上传
2023-06-07 上传
2023-06-09 上传
2023-08-17 上传
2023-05-24 上传
2023-05-24 上传
2023-05-25 上传
2023-04-25 上传
襄阳人漂泊
- 粉丝: 5
- 资源: 25
最新资源
- 李兴华Java基础教程:从入门到精通
- U盘与硬盘启动安装教程:从菜鸟到专家
- C++面试宝典:动态内存管理与继承解析
- C++ STL源码深度解析:专家级剖析与关键技术
- C/C++调用DOS命令实战指南
- 神经网络补偿的多传感器航迹融合技术
- GIS中的大地坐标系与椭球体解析
- 海思Hi3515 H.264编解码处理器用户手册
- Oracle基础练习题与解答
- 谷歌地球3D建筑筛选新流程详解
- CFO与CIO携手:数据管理与企业增值的战略
- Eclipse IDE基础教程:从入门到精通
- Shell脚本专家宝典:全面学习与资源指南
- Tomcat安装指南:附带JDK配置步骤
- NA3003A电子水准仪数据格式解析与转换研究
- 自动化专业英语词汇精华:必备术语集锦