- 核心方法
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:改變數據的個數