最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

ExtJS4动态生成的grid导出为excel示例_extjs

来源:动视网 责编:小采 时间:2020-11-27 21:22:22
文档

ExtJS4动态生成的grid导出为excel示例_extjs

ExtJS4动态生成的grid导出为excel示例_extjs:搜索了蛮久,找到一些例子,因为我是初学者的缘故大多不知道怎么使用。 研究了一下那个源码,搞到现在终于实现了基本的下载。解决了一个表格不能重复下载的小BUG,一个使用grid初始化发生的BUG 下面记录一下步骤。说不定下次还有用 1.下载需要用到js代码
推荐度:
导读ExtJS4动态生成的grid导出为excel示例_extjs:搜索了蛮久,找到一些例子,因为我是初学者的缘故大多不知道怎么使用。 研究了一下那个源码,搞到现在终于实现了基本的下载。解决了一个表格不能重复下载的小BUG,一个使用grid初始化发生的BUG 下面记录一下步骤。说不定下次还有用 1.下载需要用到js代码


搜索了蛮久,找到一些例子,因为我是初学者的缘故大多不知道怎么使用。

研究了一下那个源码,搞到现在终于实现了基本的下载。解决了一个表格不能重复下载的小BUG,一个使用grid初始化发生的BUG

下面记录一下步骤。说不定下次还有用

1.下载需要用到js代码,我已经上传

2.在你的html文件中加入引用,路径问题自己 注意下,下面是我的路径
代码如下:
;

3.在你要用到的JS代码的Ext.onReady()的开始加上
代码如下:
Ext.Loader.setConfig({ enabled: true });
Ext.Loader.setPath('Ext.ux.exporter', '../export/exporter');
Ext.require([
'Ext.ux.exporter.Exporter'
]);

设置命名空间。注意路径

4.在代码里面使用,在你需要下载功能的grid处合适的地方加入
代码如下:
xtype: 'exporterbutton',
// store: store
component: Ext.getCmp('gird_a')

这是两种初始化excel的方式,一种用store初始化,使用store的fields和data,因为我的store中的fields名字是英文,导出来的列名是英文所以我没有使用这种,而是直接用grid进行初始化。

下面说下在别人的代码基础上我修改的地方

1.在exporter.js第40行,改成了
代码如下:
var columns = Ext.Array.filter(grid.columnManager.columns,

原来的代码在第一个参数那里是grid.columns,后来我发现动态生成的grid在reconfigure之后columns放在columnManager.columns里,所以这么改


2.在workbook.js中77.78行,加了两句话
代码如下:
this.styles=[];
this.worksheets=[];

以上2行代码进行一些初始化,否则excel每次生成因为没有清空之前的数据导致格式错误

经过以上的简单修改已经可以对一个grid随意导出,并且支持对定制字段的表格导出,即导出表格显示的列

效果图在这里:

文档

ExtJS4动态生成的grid导出为excel示例_extjs

ExtJS4动态生成的grid导出为excel示例_extjs:搜索了蛮久,找到一些例子,因为我是初学者的缘故大多不知道怎么使用。 研究了一下那个源码,搞到现在终于实现了基本的下载。解决了一个表格不能重复下载的小BUG,一个使用grid初始化发生的BUG 下面记录一下步骤。说不定下次还有用 1.下载需要用到js代码
推荐度:
标签: 导出 excel grid
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top