请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

园园

中级会员

79

主题

224

帖子

593

积分

中级会员

积分
593

微信认证勋章

园园
中级会员   /  发表于:2017-4-12 16:10  /   查看:4093  /  回复:8
var excelIo = new GC.Spread.Excel.IO();使用ie9直接报错了,我知道是这个框架使用的fiel接口要求ie10+,但是我们原有系统ie9最常用,然后spreadjs 的引用excel读取和导入导出用的也最多,怎么办呢?怎么解决这个问题,给个建议呗!!!

8 个回复

倒序浏览
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-4-12 17:39:14
沙发
IE9没有文件相关的API,这个没有办法,如果用IE9的话,可以用后端的导入导出,不用纯前端的。
还是我给你说得那个ExcelIOSample
回复 使用道具 举报
园园
中级会员   /  发表于:2017-4-13 08:57:58
板凳
dexteryao 发表于 2017-4-12 17:39
IE9没有文件相关的API,这个没有办法,如果用IE9的话,可以用后端的导入导出,不用纯前端的。
还是我给你 ...

我需要读取excel显示在咱们的sheet里,如果是ie9,是不是要通过其他方式把excel读取成json,传到页面再显示呢?我这个思路对吗?
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-4-13 11:55:33
地板
对的,通过后台.net ExcelIO组件将excel 转换成JSON,然后传入到页面显示。
回复 使用道具 举报
园园
中级会员   /  发表于:2017-4-13 13:31:58
5#
dexteryao 发表于 2017-4-13 11:55
对的,通过后台.net ExcelIO组件将excel 转换成JSON,然后传入到页面显示。

我们的项目是java的,怎么转我还得再研究下。
回复 使用道具 举报
园园
中级会员   /  发表于:2017-4-13 13:33:07
6#
dexteryao 发表于 2017-4-13 11:55
对的,通过后台.net ExcelIO组件将excel 转换成JSON,然后传入到页面显示。

还有个问题我顺变问一下哈,读取服务器文件,json文件是我这么做的
$.getJSON("./1.ssjson", function (data) {
                    spreadCopy.fromJSON(data);
                    sheet = spreadCopy.getActiveSheet();

                });
excel文件怎么办呢?
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-4-13 18:08:13
7#
如果是服务器文件,不用后端ExcelIO的话,那就下载excel文件为一个blob,然后用前端ExcelIO导入bolb,但是这个支持IE10
回复 使用道具 举报
园园
中级会员   /  发表于:2017-4-14 16:08:23
8#
dexteryao 发表于 2017-4-13 18:08
如果是服务器文件,不用后端ExcelIO的话,那就下载excel文件为一个blob,然后用前端ExcelIO导入bolb,但是 ...

怎么下载一个excel文件为blob?
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-4-15 20:57:15
9#
参考下面代码

  1.             // Download Excel file
  2.             var excelFilePath = 'template.xlsx';
  3.             var xhr = new XMLHttpRequest();
  4.             xhr.open('GET', excelFilePath, true);
  5.             xhr.responseType = 'blob';
  6.             
  7.             xhr.onload = function(e) {
  8.               if (this.status == 200) {
  9.                 // get binary data as a response
  10.                 var blob = this.response;
  11.                 // convert Excel to JSON
  12.                 excelIo.open(blob, function (json) {
  13.                     var workbookObj = json;
  14.                     spread.fromJSON(workbookObj);
  15.                 }, function (e) {
  16.                     // process error
  17.                     alert(e.errorMessage);
  18.                 }, {});
  19.               }
  20.             };
  21.             
  22.             xhr.send();
复制代码
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部