如何禁用在handsontable中添加新行/列?

Posted

技术标签:

【中文标题】如何禁用在handsontable中添加新行/列?【英文标题】:How to disable adding new rows/cols in handsontable? 【发布时间】:2014-07-05 23:09:49 【问题描述】:

首先,handsontable 有一个众所周知的错误(无论如何,这是一段很棒的代码),例如提到。 user tezhm,在official github issues list for handsontable:

选择表格最后一行的单元格并在该行下方拖动选择时 进入表格之外的区域,滚动视口被触发,导致 视图的故障。这可以使用演示表重新创建。

因此,我决定要么完全关闭滚动条,要么禁用添加新行/列。

但是如何禁用在handsontable 中添加新行/列?

或者,如何在handsontable 中禁用滚动?

【问题讨论】:

【参考方案1】:

要禁用添加新行/列,请设置以下选项:

minSpareRows: 0,
minSpareCols: 0

如果您使用上下文菜单,您可以通过以下方式禁用该功能:

contextMenu: ["undo", "redo"]

另一种选择是将maxRows 设置为数据中的行数,将maxCols 设置为数据中的列数。注意:如果您使用columns 选项,maxCols 将被忽略。

maxRows: data.numberOfRows,
maxCols: data.numberOfColumns

【讨论】:

【参考方案2】:

我试过了

minSpareRows: 0,
minSpareCols: 0

但没有运气:(。

最后,我尝试了以下方法:

afterCreateRow: function (index, numberOfRows) 
                    data.splice(index, numberOfRows);
                

它完成了工作:)

【讨论】:

我猜这是另一种方式。谢谢。【参考方案3】:

使用以下选项,这对我有用..

fillHandle: 
      direction: 'vertical',
      autoInsertRow: false,
    

【讨论】:

以上是关于如何禁用在handsontable中添加新行/列?的主要内容,如果未能解决你的问题,请参考以下文章

在handsontable中禁用前两列移动

在 Handsontable 中禁用调整特定列的大小

如果正则表达式在使用 jQuery 的handsontable 中无效,则禁用按钮

将列动态添加到handsontable

在 rhandsontable 中禁用列编辑?

如何在 Handsontable 中使用自定义渲染器对列进行排序?