有什么方法可以隐藏javascript中的HOT列吗? 要求是隐藏的列将作为javascript中的参数出现,并且相应的列将相应地显示隐藏。
HOT有rowHeaders和colHeaders,数据有20列。
请告知。
答案 0 :(得分:3)
外包解决方案
好的,我找到了一个可能的解决方案。我在自己的系统上测试了它,但实际上非常简单。
您应该在customRenderer
选项中使用columns
。如果您还没有,请阅读相关内容。我们的想法是为每个单元格提供自己的渲染器。在这个自定义函数中,您可以执行以下操作:
var colsToHide = [3,4,6]; // hide the fourth, fifth, and seventh columns
function getCustomRenderer() {
return function(instance, td, row, col, prop, value, cellProperties) {
if (colsToHide.indexOf(col) > -1) {
td.hidden = true;
} else {
td.hidden = false;
}
}
}
此渲染器的作用是隐藏var colsToHide
指定的单元格。你现在所做的只是添加一个DOM元素,让用户选择哪个等等每次表格被渲染(基本上在任何更改之后发生,或者需要手动触发),指定列中的单元格将被隐藏,保持像你描述的那样,data
数组完整无缺。当不在colsToHide
时,它们会被重新渲染,所以请确保你也能正常工作。
这里我用非常基本的功能实现了它。只需在输入字段中输入列的索引,然后观察魔法发生。
http://jsfiddle.net/zekedroid/LkLkd405/2/
更好的解决方案:handsontable: hide some columns without changing data array/object