2016-09-18 61 views
0

是否有合適的方法從handsontable中的座標(例如[4,1,4,12])獲取範圍字符串(例如B5:B13)?Handsontable:從座標獲取字符串範圍

我試圖在官方文檔中找到一個,通過查找handsontable這13個頁面的問題尋找答案,但沒有發現任何內容。我認爲它應該是一個相當流行的問題,但它似乎不是:)

非常感謝!

+0

你的問題不清楚,你應該添加一些代碼。座標是什麼意思? –

+0

@ user3273700有一個回調方法['afterSelectionEnd'](https://docs.handsontable.com/0.28.0/Hooks.html#event:afterSelectionEnd),它返回一個包含四個數字的數組,它表示一個範圍選定的細胞。就像我在文章中所說的那樣,對於人們可讀的「B5:B13」單元格範圍來說,它將是'[4,1,4,12]' –

回答

1

取決於你的榜樣,但如果你讓colHeaders和rowHeaders到默認值(和它們設置爲true),你能做到這一點很容易在你的afterSelectionEnd事件。

See this JSFiddle,在控制檯打印的選定單元格

獲取列名使用標題來建構你的範圍字符串座標:

hot.addHook('afterSelectionEnd', function(row1, col1, row2, col2) { 
    var 
    row1Header=hot.getRowHeader(row1), 
    col1Header=hot.getColHeader(col1), 
    row2Header=hot.getRowHeader(row2), 
    col2Header=hot.getColHeader(col2), 

    range=row1Header+col1Header+":"+row2Header+col2Header; 
    console.log(range); 
}); 

雙重檢查後沒有任何函數可以直接給你預期的結果(範圍),但如果你對更通用的函數感興趣(不管頭文件是否存在,上面只是一個例子),你可以讓我知道,我會嘗試。

+0

是的,我已經準確地詢問了「盒子方法:)如果沒有這種方法,我可以手動完成。儘管如此,非常感謝!:) –