SpreadJS电子表格
SpreadJS是wijmo旗下的一款HTML5电子表格控件。
官方网址:http://wijmo.com/products/spreadjs/
在这里简单整理了SpreadJS几个比较简单的特点,如下:
- SpreadJS所支持的浏览器
1) Microsoft IE10
2) Microsoft IE9
3) Mozilla FireFox
4) Safari
5) Google Chrome
- 使用SpreadJS步骤
1)添加Jquery、SpreadJS脚本以及样式表的引用
<!--jQuery References-->
<script src="http://code.jquery.com/jquery-1.9.1.min.js" type="text/javascript"></script>
<script src="http://code.jquery.com/ui/1.10.1/jquery-ui.min.js" type="text/javascript"></script> <!--Theme-->
<link href="http://cdn.wijmo.com/themes/aristo/jquery-wijmo.css" rel="stylesheet" type="text/css" /> <!--SpreadJS Widgets JavaScript-->
<script src="http://cdn.wijmo.com/spreadjs/jquery.wijmo.wijspread.all.1.20133.8.min.js" type="text/javascript"></script> <!--SpreadJS Widgets CSS-->
<link href="http://cdn.wijmo.com/spreadjs/jquery.wijmo.wijspread.1.20133.8.css" rel="stylesheet" type="text/css" />
2) 生成HTML标记
<div id="ss" style="width:100%;height:400px;"></div>
3) 初始化电子表格
<script type="text/javascript">
$(document).ready(function(){
$("#ss").wijspread({sheetCount:1}); // create wijspread control
var spread = $("#ss").wijspread("spread"); // get instance of wijspread control
var sheet = spread.getActiveSheet(); // get active worksheet of the wijspread control
// initializing the active worksheet here...
});
</script>
- Spread绘制图表解决方案
1) SparkLine
对单个单元格绘制图表
function setSparkline(
row : number,
col : number,
dataRange : Range,
dataOrientation : DataOrientation,
sparklineType : SparklineType,
sparklineSetting : SparklineSetting,
dateAxisRange : Range,
dateAxisOrientation : DataOrientation
) : Sparkline;
缺点:Sparkline只有三种类型:
|
Member |
Description |
|
column |
Specifies the column sparkline. |
|
line |
Specifies the line sparkline. |
|
winloss |
Specifies the win-loss sparkline. |
2) SparkLineEx
可以在指定单元格区域内通过公式来绘制图表
sheet.setFormula(i, 4, '=CASCADESPARKLINE(C2:C17,' + i + ',B2:B17,,,"#8CBF64","#D6604D",false)');
优点:可以有多种图表类型
可以跨多个单元格绘制图表
缺点:只能通过公式来绘制图表
图表的种类不够多,不能动态展示
3) Floating Objects
通过添加浮动对象中指定的HTML元素,添加完浮动对象后,在嵌入的div中绘制图表:
var div = document.createElement('div');
div.setAttribute("id", "div1");
div.innerHTML = "<div id= 'myChart'>button<div/>";
customFloatingObject.Content(div);
$(div).highcharts......(此处省略highcharts使用方法);
优点:可以使用多种嵌入浮动对象的图表控件绘制图表
缺点:目前没找到可以自由伸缩的方法
- SpreadJS懒加载方案:
目前尚未发现脚本懒加载的方案
- SpreadJS支持国际化
$.wijmo.wijspread.CultureInfo中有默认的国际化变量,可以识别为各个culture,支持自定义culture以及设定此culture的变量
- SpreadJS 支持 Knockout (KO)技术
KnockoutJS 是一个使用 MVVM 模式的 JavaScript 库,允许双向数据绑定,使数据和UI界面进行实时的交互更新。
1) 添加最新的 jQuery 引用, Wijmo 插件, Knockout .js 文件和 KO 关于 Wijmo 的扩展文件。
2) 创建 ViewModel 和 View:添加 JavaScript 定义数据和 UI 行为。创建标记创建 View 视图,可交互的UI。
3) 绑定 SpreadJS 插件到 ViewModel 和 KO.
- 可以使用SpreadJS Designer设计器,设计器主要有以下功能:
1) 导入导出ssjson、xls、csv等文件
2) 可以保存为js文件
3) 加载、保存schema(json格式)
4) 像excel一样操作文档,编辑单元格,移动单元格,字体、颜色、样式、对齐
5) 添加sparkline图表、table、Picture
6) 设计报表公式
7) 表条件过滤、排序
- 缩小自适应单元格Shrink to Fit
对单个单元格的较长字段缩放以自适应单元格长度
- 支持typescript
添加wijmo.wijspread.d.ts 和 jquery.d.ts,可以智能感知
- 支持数据验证
1) createDateValidator
2)
createFormulaValidator
3)
createFormulaListValidator
4)
createListValidator
5)
createNumberValidator
6)
createTextLengthValidator
SpreadJS电子表格的更多相关文章
- 【图解】Web前端实现类似Excel的电子表格
本文将通过图解的方式,使用纯前端表格控件 SpreadJS 来一步一步实现在线的电子表格产品(例如可构建Office 365 Excel产品.Google的在线SpreadSheet). 工具简介: ...
- 【图解】Web前端实现相似Excel的电子表格
在本文中,我将用图解的方式用Wijmo(JavaScript库)中的SpreadJS来一步一步实现网页上的电子表格产品SpreadSheet(比如可构建Office 365 Excel产品.Go ...
- 前端必读:如何在 JavaScript 中使用SpreadJS导入和导出 Excel 文件
JavaScript在前端领域占据着绝对的统治地位,目前更是从浏览器到服务端,移动端,嵌入式,几乎所有的所有的应用领域都可以使用它.技术圈有一句很经典的话"凡是能用JavaScript实现的 ...
- 前端必读2.0:如何在React 中使用SpreadJS导入和导出 Excel 文件
最近我们公司接到一个客户的需求,要求为正在开发的项目加个功能.项目的前端使用的是React,客户想添加具备Excel 导入/导出功能的电子表格模块. 经过几个小时的原型构建后,技术团队确认所有客户需求 ...
- 如何使用JavaScript导入和导出Excel文件
本文由葡萄城技术团队于原创并首发 转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. JavaScript是一个涵盖多种框架.直译式.可以轻松自定义客户端的脚本 ...
- FCC 成都社区·前端周刊 第 3 期
01. Chrome65 的新功能 CSS Paint API 允许使用编程方式生成图像:Server Timing API允许服务器将时间信息通过HTTP headers传递给浏览器: CSS di ...
- 从服务端生成Excel电子表格(Node.js+SpreadJS)
Node.js是一个基于Chrome V8引擎的JavaScript运行环境,通常用于创建网络应用程序.它可以同时处理多个连接,并且不像其他大多数模型那样依赖线程. 对于 Web 开发者来说,从数据库 ...
- 从服务端生成Excel电子表格(GcExcel + SpreadJS)
在服务端生成Excel电子表格,除了使用 Node.js + SpreadJS 外,葡萄城官方推荐使用 SpreadJS + GcExcel.该方案不仅能够解决批量绑定数据源并导出Excel.批量修改 ...
- SpreadJS使用进阶指南 - 使用 NPM 管理你的项目
前言 SpreadJS作为一款性能出众的纯前端电子表格控件,自2015年发布以来,已经被广泛应用于各领域“在线Excel”数据管理项目中.NPM,作为管理Node.js库最有力的手段,解决了很多Nod ...
随机推荐
- AngularJS的MVC中C的实现
Angular的MVC中C的实现 注:在controller操作Dom效率是很低的,我们使用封装的指令去操作Dom
- TCP 常用总结
SO_RCVBUF SO_SNDBUF TCP socket在内核中都有一个发送缓冲区和一个接收缓冲区,不管进程是否读取socket,对端发来的数据都会经由内核接收并且缓存到socket的内核接收缓冲 ...
- Axure 使用心得总结
Axure的本意是高效快捷的完成原型制作,能够清晰的说明功能,交互就是好的,"够漂亮"就行,不需要做到很完美,至于完美还是交给专业的UI吧. 一些心得记录下来: 1.下载一些常用的 ...
- 关于litJson的System.InvalidCastException
最近在做一个Unity3D的项目,用到了litJson库, 它比JavaScript里的JSON解析更加严格, 有时候解析数据的时候会出现类型不对. 比如说 {"data":12} ...
- 如何使用PL/SQL进行远程数据库连接
1.先找到Oracle数据库的安装地址然后找到network->ADMIN->tnsnames.ora文件 2.添加下面文件到tnsnames.ora文件中去,红色部分是需要修改的部分 ...
- 开源项目大全 >> ...
http://www.isenhao.com/xueke/jisuanji/kaiyuan.php 监控系统-Nagios 网络流量监测图形分析工具-Cacti 分布式系统监视-zabbix 系统 ...
- GNU/Linux复习笔记(2)
---IO重定向: 典型的冯诺依曼计算机由5大部件组成:运算器,控制器,存储器,输入设备和输出设备.而一台计算机上可能有很多输入设备和输出设备,键盘.麦克风是输入设备,显示器.声卡是输出设备,网卡.硬 ...
- extentreports报告插件之extentX之服务搭建(三)
之前两个章节已经写完再extentreports报告插件与testng 的集成,但是发现 每次测试完后,生成的报告都要在单独发送,每个项目都有一份报告,如果项目多的话,管理起来就会很冗余. 这个给大家 ...
- 读取数据库的表并绑定到Listview
$aResultEventlog = _GetQueryTable($strSQL_Compare_FailRecordEventIDs, $iRowsEventlog, $iColsEventlog ...
- vs2010通过添加资源文件,修改win32创建的窗口
1.右键项目的“资源”,新建资源,生成.rc文件 2.进入资源视图创建icon或menu等资源 3.退出资源视图,编译这个.rc文件 4.项目源代码中添加如下几个头文件 #include " ...