数据绑定:

1、表格中得数据是引用了数据源中的数据:表格中数据改变,数据源中得数据也改变;数据源中得数据改变,通过render方法,表格中的数据也改变;

2、如果想把数据源中的数据和表格中的数据分开:JSON.parse(JSON.stringify(data2))

3、保存之前clone表格,使用afterChange的var tmpData = JSON.parse(JSON.stringify(data3));语句。

  1. afterChange:cell改变之后,会触发function(changes, source){}
    changes:是二维数组,每一被编辑的单元格信息有:[row, prop, oldVal, newVal]
    source:alter", "empty", "edit", "populateFromArray", "loadData", "autofill", "paste"

数据源:

1、数组

  1. data = [
  2. ['', 'Kia', 'Nissan', 'Toyota', 'Honda', 'Mazda', 'Ford'],
  3. ['2012', 10, 11, 12, 13, 15, 16],
  4. ['2013', 10, 11, 12, 13, 15, 16],
  5. ['2014', 10, 11, 12, 13, 15, 16],
  6. ['2015', 10, 11, 12, 13, 15, 16],
  7. ['2016', 10, 11, 12, 13, 15, 16]
  8. ];

2、隐藏第二列

  1. columns: [
  2. {data: 0},
  3. {data: 2},
  4. {data: 3},
  5. {data: 4},
  6. {data: 5},
  7. {data: 6}
  8. ]

3、对象数组

  1. objectData = [
  2. {id: 1, name: 'Ted Right', address: ''},
  3. {id: 2, name: 'Frank Honest', address: ''},
  4. {id: 3, name: 'Joan Well', address: ''},
  5. {id: 4, name: 'Gail Polite', address: ''},
  6. {id: 5, name: 'Michael Fair', address: ''},
  7. ];

4、对象数组嵌套列映射

  1. nestedObjects = [
  2. {id: 1, name: {first: "Ted", last: "Right"}, address: ""},
  3. {id: 2, address: ""}, // HOT will create missing properties on demand
  4. {id: 3, name: {first: "Joan", last: "Well"}, address: ""}
  5. ];
  6. columns: [
  7. {data: 'id'},
  8. {data: 'name.first'},
  9. {data: 'name.last'},
  10. {data: 'address'}
  11. ];

5、对象数组自定义数据约定:数据源为空

  1. hot5 = new Handsontable(container, {
  2. data: [],
  3. dataSchema: {id: null, name: {first: null, last: null}, address: null},
  4. startRows: 5,
  5. startCols: 4,
  6. colHeaders: ['ID', 'First Name', 'Last Name', 'Address'],
  7. columns: [
  8. {data: 'id'},
  9. {data: 'name.first'},
  10. {data: 'name.last'},
  11. {data: 'address'}
  12. ],
  13. minSpareRows: 1
  14. });

6、数据源为函数:http://docs.handsontable.com/0.16.0/tutorial-data-sources.html  最后一个

  1. var
  2. container6 = document.getElementById('example6'),
  3. hot6;
  4.  
  5. hot6 = new Handsontable(container6, {
  6. data: [
  7. model({id: 1, name: 'Ted Right', address: ''}),
  8. model({id: 2, name: 'Frank Honest', address: ''}),
  9. model({id: 3, name: 'Joan Well', address: ''}),
  10. model({id: 4, name: 'Gail Polite', address: ''}),
  11. model({id: 5, name: 'Michael Fair', address: ''})
  12. ],
  13. dataSchema: model,
  14. colHeaders: ['ID', 'Name', 'Address'],
  15. columns: [
  16. {data: property('id')},
  17. {data: property('name')},
  18. {data: property('address')}
  19. ],
  20. minSpareRows: 1
  21. });
  22.  
  23. function model(opt){
    //...
    } 

handsontable-developer guide-data binding,data sources的更多相关文章

  1. Intel® Threading Building Blocks (Intel® TBB) Developer Guide 中文 Parallelizing Data Flow and Dependence Graphs并行化data flow和依赖图

    https://www.threadingbuildingblocks.org/docs/help/index.htm Parallelizing Data Flow and Dependency G ...

  2. Data Binding MVVM 数据绑定 总结

    示例代码:https://github.com/baiqiantao/DataBindingTest 参考:精通Android Data Binding    Android Data Binding ...

  3. 从零開始的Android新项目7 - Data Binding入门篇

    Data Binding自从去年的Google I/O公布到至今,也有近一年的时间了.这一年来,从Beta到如今比較完好的版本号.从Android Studio 1.3到如今2.1.2的支持,能够说D ...

  4. Android开发教程 - 使用Data Binding(一) 介绍

    本系列目录 使用Data Binding(一)介绍 使用Data Binding(二)集成与配置 使用Data Binding(三)在Activity中的使用 使用Data Binding(四)在Fr ...

  5. Data Binding Guide——google官方文档翻译(下)

    这篇博客是Data Binding Guide官网文档翻译的下篇.假设没看过前半部分翻译的能够先看Data Binding Guide--google官方文档翻译(上)  一,数据对象 不论什么不含业 ...

  6. Android Data Binding代码实践(告别findViewById)(四)

    Data Binding实战(一) Data Binding语法解析(二) Data Binding高级用法(三) 好了,继前三篇学习了Data Binding之后,我们可以发现它的强大之处有这么几点 ...

  7. Optimizing Performance: Data Binding(zz)

    Optimizing Performance: Data Binding .NET Framework 4.5 Other Versions   Windows Presentation Founda ...

  8. Data Binding in WPF

    http://msdn.microsoft.com/en-us/magazine/cc163299.aspx#S1   Data Binding in WPF John Papa Code downl ...

  9. Data Binding(数据绑定)用户指南

    1)介绍 这篇文章介绍了如何使用Data Binding库来写声明的layouts文件,并且用最少的代码来绑定你的app逻辑和layouts文件. Data Binding库不仅灵活而且广泛兼容- 它 ...

随机推荐

  1. OneProxy常用参数说明

    5.2.OneProxy常用参数说明 OneProxy的所有可用参数可通过oneproxy --help-all查看.所有参数均可以写入文件中,由OneProxy启动时加载 5.2.1.基本参数 -- ...

  2. 把XML保存为ANSI编码

    XmlDocument xmlDoc = new XmlDocument(); xmlDoc.LoadXml(xmlText); //plu.xml 编码是ANSI的.否则称上品名是乱码 XmlEle ...

  3. 管道和FIFO 二

    前面我们学习了一下进程,我们知道多,进程间的地址空间相对独立.进程与进程间不能像线程间通过全局变量通信. 如果想进程间通信,就需要其他机制.          常用的进程间通信方式有这几种   A.传 ...

  4. js cookie 工具类

    /*cookie start*/ var Cookie=new function(){ //添加cookie this.add=function(name,value,hours){ var life ...

  5. [转][Java]简单标签库简介

    public class SimpleTagDemo extends SimpleTagSupport { @Override public void doTag() throws JspExcept ...

  6. zabbix使用之打造邮件报警

    zabbix使用之打造邮件报警 前言: 报警信息很重要,它能使我们最快的知道故障内容,以便于及时处理问题.zabbix如果没配置报警功能,则完全不能体现zabbix的优势了 配置详情如下: 1.编写发 ...

  7. sql 存储过程返回值 变量名

    return 语句返回值,前台调用的参数名称为 @RETURN_VALUE

  8. Windows Git 服务器 客户端 Delphi Git配置

    装Git后本地单机版就有了版本管理功能. git 使用记录 git 客户端 这2个工具足够用. git for windows,http://git-scm.com/download/,Git-1.9 ...

  9. Spring Data JPA 基本使用

    Spring Data 简化开发,支持Nosql和关系型数据库, DEMO https://github.com/easonstudy/boot-demo/tree/master/boot-sprin ...

  10. VML元素的相关资料

    虽然VML已经过气了,但有时我还不得不使用它,下面是我收集或研究得到的一些东西. 判定一个元素是否为VML元素 function isVML(el) { if (el && el.no ...