关于隐藏列的问题:

刚开始使用的
1.百度:
当不需要显示某一列的时候可用如下格式设置:

columns:[
{data:0},
{data:2}
]

这里就不显示第二列数据,只有第1、3列数据,虽然隐藏了 但是数据渲染不出来,

2.还思索了个笨方法:

css把最后一行隐藏 但是确实挺蠢的,因为样式空了一片 表格不居中

3.继而去官网查看了API找到了

hiddenColumns: { // handsontable 3.0.0不支持该属性

            columns: hiddenColumns,
            indicators: true
        }
        

这个方法,但是这个方法 用7.0的js文件能隐藏列 但是取消了单元格编辑的功能
用3.0的js文件能编辑但是不能隐藏列(鱼和熊掌不能兼得)

4.找到了另外一个方法:
hot.updateSettings({colWidths: [10,20,30,0.1]});
前三个数是每列所占比例 0.1的话就是想隐藏的列,但是有一个缺点:用鼠标拖拽 隐藏的列就出来了

5.完善第4个方法:
在第四个方法的基础上完善一下,在最后一列为0.1的情况下再给他display:none!
加上

afterGetColHeader:function(col,th){ // 所有单元格走一遍

            if (col==(headers.length-1)){
                th.style.display='none'; // 防止拖曳标题栏,露出隐藏的列(主键)
            }
        }
        
        这个方法,这就比较完善了

李嘉琪
3 声望0 粉丝

程序媛