handsontable 方法汇总
- 核心方法
1.为handsontable添加钩子方法
addHook(key,callback):key为钩子方法名
例如:hot.addHook('beforeInit', myCallback);
addHookOnce(key,callback):添加只使用一次的方法,用完后自动删除
例如:hot.addHookOnce('beforeInit', myCallback);
2.添加行或列,删除行或列
alter(action,index,amount,source,keepEmptyRows)
action:有4个值insert_row,insert_col,remove_row,remove_col
index:行索引,当存在时在索引处插入或删除,不存在时在当前行后插入
amount:默认值为1
source:行或列对象
keepEmptyRows:true/false,当值为true时,空行不被删除。
3.clear():清空表格数据
4.colOffset():获取可见的第一列的索引值
5.colToProp(col):返回给定索引列的列名,col为列索引
6.countCols():统计表格的所有列总数并返回
countRows():统计表格的总行数,并返回
7.countEmptyCols(ending):
当ending的值为true时,统计所有空列的总数,返回总数显示再最右侧
countEmptyRows(ending):当ending的值为1时,统计所有空行总数,返回总数显示在最下方
8.countRenderedCols():统计并返回被渲染的列数
countRenderedRows():统计并返回被渲染的行数
9.countVisibleCols():统计并返回可见的列数,当返回-1时,表格不可见
countVisibleRows():统计并返回可见的行数,当返回-1时,表格不可见
10.deselectCell():取消当前被选中的单元格
11.destory():移除dom对象中的表格
12.destoryEditor(reverOriginal)
去除当前编辑器,并选中当前单元格,渲染上该效果。如果reverOriginal不是true则被编辑的数据将被保存,如果为true,则会恢复之前的数据,不保存新的数据到单元格。
13.getActiveEditor():返回一个活跃的编辑对象。
14.getCell(row.col,topmost):
根据行列索引,获取一个被渲染的单元格,如果该单元格未被渲染则返回null
其中,row,col分别为行索引和列索引,topmost为表示是否是最上层,其值为true/false
15.getCellEditor():获取单元格的编辑器
16.getCellMeta(row,col):根据行列索引获取单元格的属性对象
17.getCellRenderer(row,col):根据单元格的行列索引获取单元格的渲染函数
18.getCellValidator():获取单元格的校验器
19.getColHeader(col):根据列索引获取列头名称
getRowHeader(row):根据行索引获取行头名称
20.getColWidth(col):根据列索引获取列宽
getRowHeight(row):根据行索引获取行高
21.getCoords(elem):获取元素的坐标
22.getCopyableData(startRow,startCol,endRow,endCol):获取指定范围的单元格数据
23.getData(row1,col1,row2,col2):获取指定范围的单元格的数据
24.getDataAtCell(row,col):根据行列索引获取单元格的值
25.getDataAtCol(col):根据列索引获取一列的数据
getDataAtRow(row):根据行索引获取一行的数据
26.getDataAtProp(prop):根据对象属性名获取相应的列的数据,prop为属性名
27.getDataAtRowProp(row,prop):根据行索引返回指定属性名的值
28.getInstance():获取一个handsontable实例
29.getPlugin(pluginName):根据插件名称获取一个插件实例
30.getSelected():获取被选中的单元格的索引数组,数组包括:startRow,stratCol,endRow,
endCol4个值。
31.getSelectedRange():获取被选中的单元格的坐标
32.getSettings():获取对象的配置信息
33.getSourceDataAtCol(col):根据列号获取data source中的该列数据
getSourceDataAtRow(row):根据行号获取data source中的该行数据
34.getValue():获取所有被选中的单元格的值
35.hasColHeaders():返回是否存在列头
hasRowHeaders():返回是否存在行头
36.isEmptyCol(col):根据列索引判断该列是否为空
isEmptyRow(row):根据行索引判断该行是否为空
37.isListening():判断当前handsontable实例是否被监听
listen():监听body中的input框
unlisten():停止监听
38.loadData(data):加载本地数据
39.populateFormArray(start,input,end,source,method,direction,deltas):
使用二维数组填充单元格,其中:
start:开始位置
input:二维数组
end:结束位置
source:默认为populateFromArray
method:默认为overwrite
direction:left/right/top/bottom
deltas:其值为一个数组
40.propToCol(prop):返回给定属性名的列索引,prop为属性名
propToRow(prop):返回给定属性名的行索引,prop为属性名
41.removeCellMeta(row,col,key):根据行列索引移除指定的属性对象
42.removeHook(key,callback):移除钩子方法
43.render():渲染表格
44.rowOffset():获取第一个可见行的索引
45.setCellMeta(row,col,key,val):设置参数属性和值到指定行列的单元格
46.setCellMetaObject(row,col,prop):设置属性对象到指定的单元格
47.setDataAtCell(row,col,value,source):设置某个单元格的数据
row:行号索引
col:列号索引
value:将要设置的单元格数据
source(可选):字符串标识中描述这一变化将如何改变数组(用于onAfterChange或onBeforeChange回调)
也可使用数组参数,如下:
hot.setDataAtCell([
[9, 0, 'a'], // row col value
[9, 1, 'b']
]);
48.setDataAtRowProp(row,prop,value,source):设置指定行的属性值为指定的值
与setDataAtCell不同的是数据源格式,setDataAtCell是使用二维数组做数据源,setDataAtRowProp是以对象数组做数据源,两个的功能实际上是一样的。
49.updateSettings(setting,init):修改初始化的配置信息
50.validdateCells(callback):使用验证器验证所有单元格
- 通用方法
1.clear():清空数据
2.createCol(index,amount,createAutomatically):添加列
index:列索引,amount:添加的列总数,createAutomatically:为一个数字
removeCol(index,amount):删除列
createRow(index):添加行
removeRow(index,amount):删除行
3.get(row,prop):根据行号和属性索引获取单元格的值
getAll():获取所有的数据
getCopyable(row,prop):根据行号和属性索引获取单个单元格的值
getCopyableText(start,end):获取被选择位置的值
satrt:开始选择的位置对象,end:结束选择的位置对象
getRange(start,end,destination):根据坐标获取数据
satrt:开始选择的位置对象,end:结束选择的位置对象,destionation:目的地map索引
getText(start,end):获取目标位置的数据
4.set(row,prop,value,source):设置单个单元格的值
row:行索引,prop:列索引,value:新值,source:hook插件的提供者
5.spliceCol(col,index,amount):添加或移除列数据
col:列索引,index:开始改变的数组索引,amount:改变数据的个数
spliceRow(row,index,amount):添加或删除行数据
row:行索引,index:开始改变的数组索引,amount:改变数据的个数