This page covers a next version of Handsontable, and is not published yet.

This page covers a non-latest version of Handsontable.

# HiddenColumns

# Description

Plugin allows to hide certain columns. The hiding is achieved by not rendering the columns. The plugin not modifies the source data and do not participate in data transformation (the shape of data returned by getData* methods stays intact).

Possible plugin settings:

  • copyPasteEnabled as Boolean (default true)
  • columns as Array
  • indicators as Boolean (default false).


const container = document.getElementById('example');
const hot = new Handsontable(container, {
  data: getData(),
  hiddenColumns: {
    copyPasteEnabled: true,
    indicators: true,
    columns: [1, 2, 5]

// access to hiddenColumns plugin instance:
const hiddenColumnsPlugin = hot.getPlugin('hiddenColumns');

// show single column

// show multiple columns
hiddenColumnsPlugin.showColumn(1, 2, 9);

// or as an array
hiddenColumnsPlugin.showColumns([1, 2, 9]);

// hide single column

// hide multiple columns
hiddenColumnsPlugin.hideColumn(1, 2, 9);

// or as an array
hiddenColumnsPlugin.hideColumns([1, 2, 9]);

// rerender the table to see all changes

# Options

# hiddenColumns

Source code (opens new window)

hiddenColumns.hiddenColumns : boolean | object

The HiddenColumns plugin allows hiding of certain columns. You can pass additional configuration with an object notation. Options that are then available are:

  • columns - an array of rows that should be hidden on plugin initialization
  • indicators - enables small ui markers to indicate where are hidden columns.

Default: undefined Example

// enable column hiding
hiddenColumns: true,

// or
hiddenColumns: {
  // set columns that are hidden by default
  columns: [5, 10, 15],
  // show where are hidden columns
  indicators: true

# Methods

# destroy

Source code (opens new window)


Destroys the plugin instance.

# disablePlugin

Source code (opens new window)


Disables the plugin functionality for this Handsontable instance.

# enablePlugin

Source code (opens new window)


Enables the plugin functionality for this Handsontable instance.

# getHiddenColumns

Source code (opens new window)

hiddenColumns.getHiddenColumns() ⇒ Array<number>

Returns an array of visual indexes of hidden columns.

# hideColumn

Source code (opens new window)


Hides a single column.

Param Type Description
...column number Visual column index.

# hideColumns

Source code (opens new window)


Hides the columns provided in the array.

Param Type Description
columns Array<number> Array of visual column indexes.

# isEnabled

Source code (opens new window)

hiddenColumns.isEnabled() ⇒ boolean

Checks if the plugin is enabled in the handsontable settings. This method is executed in Hooks#beforeInit hook and if it returns true than the HiddenColumns#enablePlugin method is called.

# isHidden

Source code (opens new window)

hiddenColumns.isHidden(column) ⇒ boolean

Checks if the provided column is hidden.

Param Type Description
column number Visual column index.

# isValidConfig

Source code (opens new window)

hiddenColumns.isValidConfig(hiddenColumns) ⇒ boolean

Get if trim config is valid. Check whether all of the provided column indexes are within the bounds of the table.

Param Type Description
hiddenColumns Array List of hidden column indexes.

# showColumn

Source code (opens new window)


Shows a single column.

Param Type Description
...column number Visual column index.

# showColumns

Source code (opens new window)


Shows the provided columns.

Param Type Description
columns Array<number> Array of visual column indexes.

# updatePlugin

Source code (opens new window)


Updates the plugin state. This method is executed when Core#updateSettings is invoked.

Last Updated: Apr 12, 2024