首先,有一个众所周知的错误handsontable
(无论如何都是一段很棒的代码),例如, user tezhm,official github issues list for handsontable:
在表格的最后一行选择单元格并在行下方拖动选择时 进入表格外的区域,触发滚动视口 视线故障。这可以使用演示表重新创建。
因此,我决定完全关闭滚动条或禁用添加新的行/列。
但如何禁用在handsontable
中添加新行/列?
或者,如何禁用handsontable
中的滚动?
答案 0 :(得分:14)
要禁用添加新行/列,请设置以下选项:
minSpareRows: 0,
minSpareCols: 0
如果您使用的是上下文菜单,则可以使用以下命令禁用该功能:
contextMenu: ["undo", "redo"]
另一种选择可能是将maxRows
设置为数据中的行数,将maxCols
设置为数据中的列数。注意:如果您使用的是columns
选项,则会忽略maxCols
。
maxRows: data.numberOfRows,
maxCols: data.numberOfColumns
答案 1 :(得分:3)
我试过了
minSpareRows: 0,
minSpareCols: 0
但没有运气:(。
最后,我尝试了以下内容:
afterCreateRow: function (index, numberOfRows) {
data.splice(index, numberOfRows);
}
它完成了工作:)
答案 2 :(得分:3)
使用以下选项,这对我有用..
fillHandle: {
direction: 'vertical',
autoInsertRow: false,
}
答案 3 :(得分:0)
在jEXCEL中,您可以使用以下命令禁用插入行和插入列。
<html>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/numeral.js/2.0.6/numeral.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jexcel/2.1.0/js/jquery.jexcel.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jexcel/2.1.0/js/jquery.jdropdown.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jexcel/2.1.0/css/jquery.jexcel.min.css" type="text/css" />
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jexcel/2.1.0/css/jquery.jdropdown.min.css" type="text/css" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/jexcel/2.1.0/js/excel-formula.min.js"></script>
<div id="my"></div>
<script>
data1 = [
['US', 'Cheese', 'Yes', '2019-02-12'],
['CA;US;UK', 'Apples', 'Yes', '2019-03-01'],
['CA;BR', 'Carrots', 'No', '2018-11-10'],
['BR', 'Oranges', 'Yes', '2019-01-12'],
];
$('#my1').jexcel({
data:data1,
colHeaders: [ 'Product Origin','Description', 'Stock', 'Best before' ],
colWidths: [ 300, 200, 100, 100 ],
columns: [
{ type: 'dropdown', url:'/jexcel/countries', autocomplete:true, multiple:true }, // Remote source for your dropdown
{ type: 'text' },
{ type: 'dropdown', source:['No','Yes'] },
{ type: 'calendar' },
],
style:[
{ A1: 'background-color: orange; ' },
{ B1: 'background-color: orange; ' },
{ C1: 'background-color: orange; ' },
{ D1: 'background-color: orange; ' },
],
allowInsertRow:false,
allowManualInsertRow:false,
allowInsertColumn:false,
allowManualInsertColumn:false,
});
</script>
</html>