Handson: 亲自实践

先给出数据源和基本配置:

 var data =[
["A1","B1","C1","D1"],
["A2","B2","C2","D2"],
["A3","B3","C3","D3"]
];
var objectData = [
{id: 1, name: 'Ted Right', address: ''},
{id: 2, name: 'Frank Honest', address: ''},
{id: 3, name: 'Joan Well', address: ''},
{id: 4, name: 'Gail Polite', address: ''},
{id: 5, name: 'Michael Fair', address: ''},
];
var container=document.getElementById('example');
var ht=new Handsontable(container,{
data:objectData,
rowHeaders:true,
colHeaders:true
//,disableVisualSelection: true
});

开始操作表格(一些方法methods)

怎样获得表格中某个范围range的数据?

alert(ht.getData(0,1));//[A1,B1]
alert(ht.getData(0,2));//[A1,B1,C1]
alert(ht.getData(0,3));//[A1,B1,C1,D1]
alert(ht.getData(0,4));//[A1,B1,C1,D1,] alert(ht.getData(1,1));//[A1,B1,A2,B2]
alert(ht.getData(1,2));//[A1,B1,C1,A2,B2,C2]
alert(ht.getData(1,3));//[A1,B1,C1,D1,A2,B2,C2,D2] alert(ht.getData(2,1));//[A1,B1,A2,B2,A3,B3] alert(ht.getData(1,1,2,2));//[B2,C2,B3,C3] 这是一个起止区间,类似excel的B2:C3;没有开始地址的就默认为(0,0),如(0,1)==(0,0,0,1),(2,1)==(0,0,2,1)

怎样获得表格中某个单元格cell的数据?

alert('getDataAtCell: ' + ht.getDataAtCell(1,3));// D2

// 若数据源是objectData,属性名就是id,name,address等。
alert('getDataAtRowProp: ' + ht.getDataAtRowProp(1,'name'));// Frank Honest

怎样获得表格中某一行row的数据?

alert('getDataAtRow: '+ht.getDataAtRow(2));//[3,"Joan Well",""]

怎样获得表格中某一列column的数据?

 alert('getDataAtCol: '+ht.getDataAtCol(1));

 // 类似于getDataAtCol(),只不过将列索引改成了字段属性名。对object datasource有效。
alert('getDataAtProp: '+ht.getDataAtProp("name"));

怎样改变单个或多个单元格的内容?

  ht.setDataAtCell([
[0,0,'hi: 0,0'],
[0,2, "hi: 0,2"]
]); // 根据行号列标(Array data source)或行号列属性(object datasource)设置单元格的值。
ht.setDataAtRowProp(1,'name',"wooHAHA");

怎样在表格中插入行和列?

ht.alter('insert_row',2);// 在第3行上插入一行,不带行索引表示加入到当前行下方;
// 插入列同理!但是只能用在Array datasource!
ht.alter('insert_col',2);//在第3列前面(左边)插入一列。

怎样在表格中删除行和列?

ht.alter('remove_row');
ht.alter('remove_col');

怎样操作单元格?

alert(ht.getCell(1,1));//获得单元格对象

ht.getCellMeta(1,1));//获得单元格的属性对象
ht.setCellMeta(1,1,"sx","sxz");//设置单元格属性 // 上面说了如何设置和获得cell或range的值,下面看看如果选择它们。
// 获得和选择是一样的吗?不一样的概念,get、select
console.log(ht.selectCell(2,2));//预设第三行第三列被选中
alert(ht.getValue());//现在知道getValue怎么回事了吧!当预设有cell被选中时,这个getValue就会显示选中cell的内容了。 // 好吧,来看看预设选中了什么?
alert(ht.getSelected());//返回坐标,如2,2,2,2

怎么知道表格的行数和列数?

alert('表格行数:'+ht.countRows());
alert('表格列数:'+ht.countCols());

怎么根据列名称得到列索引,根据列索引得到列名称?

alert(ht.propToCol('id'));//根据列属性名获得列索引,要object datasource才行。但是插入列却要用array datasource,这么纠结?

alert(ht.colToProp(2));//根据列索引得到该列的属性名称,如name,address等。数据源是object才有效。

怎样获得行标题和列标题的名称?

 // 表格配置中有个rowHeaders,一般配置为true,显示为行号1,2,3,4...。这个也可以自定义的哦,比如 rowHeaders:['第一行','第二行'...],这样getRowHeader函数就有意义了。
alert(ht.getRowHeader(1));
console.log(ht.getColHeader());//不带参数返回所有列名称的array 如["A","B","C"]。

怎么清空表格内容?

ht.clear();

Handsontable 学习笔记-Methods的更多相关文章

  1. handsontable前端excel学习笔记

    暂时没有好的中文资料,大概找了三遍随便看看,之后重点研究其github 1.Handsontable 学习笔记-Methods 2. Handsontable通用方法 3.handsontable的核 ...

  2. swift学习笔记4——扩展、协议

    之前学习swift时的个人笔记,根据github:the-swift-programming-language-in-chinese学习.总结,将重要的内容提取,加以理解后整理为学习笔记,方便以后查询 ...

  3. RAC学习笔记

    RAC学习笔记 ReactiveCocoa(简称为RAC),是由Github开源的一个应用于iOS和OS开发的新框架,Cocoa是苹果整套框架的简称,因此很多苹果框架喜欢以Cocoa结尾. 在学习Re ...

  4. X-Cart 学习笔记(二)X-Cart框架1

    目录 X-Cart 学习笔记(一)了解和安装X-Cart X-Cart 学习笔记(二)X-Cart框架1 X-Cart 学习笔记(三)X-Cart框架2 X-Cart 学习笔记(四)常见操作 四.X- ...

  5. Vue学习笔记-1

    前言 本文不是Vue.js的教程,只是一边看官网Vue的教程文档一边记录并总结学习过程中遇到的一些问题和思考的笔记. 1.vue和avalon一样,都不支持VM初始时不存在的属性 而在Angular里 ...

  6. python学习笔记整理——字典

    python学习笔记整理 数据结构--字典 无序的 {键:值} 对集合 用于查询的方法 len(d) Return the number of items in the dictionary d. 返 ...

  7. Rest API 开发 学习笔记(转)

    Rest API 开发 学习笔记 概述 REST 从资源的角度来观察整个网络,分布在各处的资源由URI确定,而客户端的应用通过URI来获取资源的表示方式.获得这些表徵致使这些应用程序转变了其状态.随着 ...

  8. A.Kaw矩阵代数初步学习笔记 10. Eigenvalues and Eigenvectors

    “矩阵代数初步”(Introduction to MATRIX ALGEBRA)课程由Prof. A.K.Kaw(University of South Florida)设计并讲授. PDF格式学习笔 ...

  9. Android学习笔记之HttpClient实现Http请求....

    PS:最近光忙着考试了....破组成原理都看吐了....搞的什么也不想干...写篇博客爽爽吧....貌似明天就考试了...sad... 学习笔记: 1.如何实现Http请求来实现通信.... 2.解决 ...

随机推荐

  1. HDU3466Proud Merchants(贪心&背包)

    http://acm.hdu.edu.cn/showproblem.php?pid=3466 题目大意是说n个物品每个物品的花费是p,但是如果你现在的钱少于q就买不了这个物品,每个物品的价值是v,求有 ...

  2. 初学VSTO一问,如何添加SheetChange事件

    很多初学者在学习VSTO时,觉得很迷茫,举一个简单的例子,在VBA中,添加SheetChange的事件,非常容易. 如下图所示,只需要在VBE界面,先把SheetChange事件就好了. 而认为在VS ...

  3. hdoj 5344 MZL's xor

    题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=5344 #include<stdio.h> #include<cstring> ...

  4. redis安装配置与测试

    phpredis: https://github.com/nicolasff/phpredis http://www.cnblogs.com/ikodota/archive/2012/03/05/ph ...

  5. JVM的内存管理机制

    在做Java开发的时候常用的JVM内存管理有两种,一种是堆内存,一种是栈内存.堆内存主要用来存储程序在运行时创建或实例化的对象与变量,例如:我们通过new MyClass()创建的类MyClass的对 ...

  6. asp获取勾选checkbox的值

    Dim str_select  str_select = CStr(request.Form("c_name")) c_name是checkbox的name

  7. C:预编译指令

    预编译 关于编译 参考 关于宏定义 参考 预编译又称为预处理,是做些代码文本的替换工作处理#开头的指令,比如拷贝#include包含的文件代码,#define宏定义的替换,条件编译等,就是为编译做的预 ...

  8. .net 下的MVCPager

    http://www.cnblogs.com/jiagoushi/archive/2012/12/16/2820835.html http://blog.itpub.net/9914816/views ...

  9. 导入flash 逐帧动画

    只要图片是一序列的,比如0001-0100,就可以使用导入素材功能,选择第一张图片,选中影片剪辑并编辑然后点击导入到舞台,然后FlashCS6工具就会问你,这是一序列图片,是否逐帧导入,点是,就ok了 ...

  10. Oracle主键自增的实现

    create sequence seq_字段名_表名 minvalue 1 maxvalue 999999999999999999999999999 start with 1 increment by ...