ExtJS中grid 导出Ecxel文件

xuxiaomei2707 2015-07-14 04:02:45
麻烦大家给个例子,多谢了
...全文
128 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
五更琉璃 2015-07-15
  • 打赏
  • 举报
回复
如果在前端导出的话,非IE游览器能做的到吗??
xuxiaomei2707 2015-07-15
  • 打赏
  • 举报
回复
Ext.ux.clone(tmpStore.lastOptions) 这里总报错
xuxiaomei2707 2015-07-15
  • 打赏
  • 举报
回复
不是java的,我想用前台导出,比如extjs自带的有没有方法啊,我看大家好像都在用GridToExecl.js 但是我的js总是报找不到方法 /** Execl导出方法 **/ function ExportExcel(gridPanel, config) { if (gridPanel) { var tmpStore = gridPanel.getStore(); var tmpExportContent = ''; //以下处理分页grid数据导出的问题,从服务器中获取所有数据,需要考虑性能 var tmpParam = Ext.ux.clone(tmpStore.lastOptions); //此处克隆了原网格数据源的参数信息 if (tmpParam && tmpParam.params) { delete (tmpParam.params[tmpStore.paramNames.start]); //删除分页参数 delete (tmpParam.params[tmpStore.paramNames.limit]); } var tmpAllStore = new Ext.data.GroupingStore({//重新定义一个数据源 proxy: tmpStore.proxy, reader: tmpStore.reader }); tmpAllStore.on('load', function (store) { config.store = store; tmpExportContent = gridPanel.getExcelXml(false, config); //此方法用到了一中的扩展 if (Ext.isIE || Ext.isSafari || Ext.isSafari2 || Ext.isSafari3) {//在这几种浏览器中才需要,IE8测试不能直接下载了 if (!Ext.fly('frmDummy')) { var frm = document.createElement('form'); frm.id = 'frmDummy'; frm.name = id; frm.className = 'x-hidden'; document.body.appendChild(frm); } Ext.Ajax.request({ //将生成的xml发送到服务器端,需特别注意这个页面的地址 url: 'ViewLogHandler.ashx?type=excel', method: 'POST', form: Ext.fly('frmDummy'), callback: function (o, s, r) { //alert(r.responseText); }, isUpload: true, params: { ExportContent: tmpExportContent, ExportFile: gridPanel.id + '.xls' } }); } else { document.location = 'data:application/vnd.ms-excel;base64,' + Base64.encode(tmpExportContent); } }); tmpAllStore.load(tmpParam); //获取所有数据 } };
xujun5031 2015-07-15
  • 打赏
  • 举报
回复

7,765

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧