Handsontable 使新插入的单元格可编辑,而已加载具有只读值的单元格

Posted

技术标签:

【中文标题】Handsontable 使新插入的单元格可编辑,而已加载具有只读值的单元格【英文标题】:Handsontable make newly inserted cell editable while already loaded cell with value readonly 【发布时间】:2016-03-25 04:14:18 【问题描述】:

我正在使用 handsontable 加载值并进行编辑。

我有一张如下表:

 var cw = document.getElementById('tableorder').clientWidth;
                        var rest = cw - 550;
                        var container = document.getElementById('tableorder');
                        ordertable = new Handsontable(container, 
                            data: data,
                            colHeaders: ['Collection Mode', 'Remarks','Amount'],
                            columns: [
                                data: 4, readOnly: false, type: 'autocomplete', source: collectionmethod, validator: collectionmethod_validations, strict: true,
                                data: 5, readOnly: false,
                                data: 3, readOnly: false, type: 'numeric', format: '0.000', validator: qty_validations, allowInvalid: true
                            ],
                            minSpareRows: 1,
                            rowHeaders: true,
                            contextMenu: ['row_above', 'row_below', 'remove_row', 'undo', 'redo'],
                            colWidths: [250, rest, 250],
                            autoWrapRow: true,
                            autoWrapCol: true,
                            beforeRemoveRow: removerow_validation
                        );

我有一组来自 ajax 的值,我正在创建表:

我需要的是:

我需要制作某些单元格read-only。但是如果我插入另一行,那么包含该特定单元格的新行应该是可编辑的

在我的情况下,我需要以下单元格为read-only

data: 3, readOnly: false, type: 'numeric', format: '0.000', validator: qty_validations, allowInvalid: true

我尝试提供readOnly: false,但如果我添加新行,那么它也会变为只读。

如何将已加载的单元格设为只读而新插入的单元格可编辑?

【问题讨论】:

【参考方案1】:

解决办法:

cells :function(row, col, prop) 
                                    var cellProperties = ;

                                    if (row < total_length) 
                                        cellProperties.readOnly = true;

                                    
                                    else
                                    
                                        cellProperties.readOnly = false;
                                    

                                        return cellProperties;
                                

【讨论】:

没错,您可以对每个单元格进行定义来实现您的答案。

以上是关于Handsontable 使新插入的单元格可编辑,而已加载具有只读值的单元格的主要内容,如果未能解决你的问题,请参考以下文章

如何使 HTML 表格单元格可编辑?

仅在选择时设置Jtable单元格可编辑

当其他单元格值更改时禁用 JTable 单元格可编辑

如何在单击按钮时使 ag 网格中的所有单元格可编辑

◆◆0SALV教程20-单元格可编辑

JavaFx表格视图TableView设置单元格可编辑