Table Editor (JavaScript)

Displays data in an HTML table view and a possibility to edit. The view offers several interactive features, as well as the possibility to select rows.

The node supports custom CSS styling. You can simply put CSS rules into a single string and set it as a flow variable 'customCSS' in the node configuration dialog. You will find the list of available classes and their description on our documentation page.

Options

General view and display options.

No. of rows to display
Use this numerical value to restrict the number of rows used for this visualization.
Title (*)
An optional title to be displayed above the table. Leave blank if no title is desired.
Subtitle (*)
An optional subtitle to be displayed above the table. Leave blank if no subtitle is desired.
Display row colors
Enable or disable the display of row colors. Colors can be assigned e.g. with the Color Manager node and will be rendered as a colored square next to the row keys.
Display row keys
Enable or disable the display of row keys. When enabled row keys will be rendered in a separate column.
Display full screen button
Displays a button enabling full screen mode.
Display row indices
Enable or disable the display of row indices. When enabled row indices will be rendered in a separate column.
Display column headers
Enable or disable the display of column headers. When disabled sorting on columns will not be functional.
Columns to display
Select the columns to be included in the table view.

Editor

Editor options.

Editable columns
Choose which columns will be available for editing in the view. The following data types are currently supported: string, numbers and boolean. For numbers there is a basic validation in the view. For boolean type "true" represents logical true value, any other value will be intepreted as false. To input a missing value, leave the editor's field blank.
Reset editor changes
Erase all the editor changes stored in the node.
Suggestion dropdown for columns
Select the columns for which dropdown suggestions should be enabled. Dropdown suggestions are based on the domain values of each column.
Use domain of incoming table
Dropdown suggestions are based on the domain values of each column of the incoming table.

Interactivity

The JavaScript Table View allows for several ways of interactivity. Please use the options below to configure which features will be activated on the view and further configuration of interactive properties.

Enable pagination
Enable or disable the pagination feature globally. When disabled the table is rendered whole on one page. When enabled use the options below to further refine the pagination settings.
Initial page size
Set the page size to be used on initial layout. A page size is defined as the number of rows the table displays on one page. If the page size change control is enabled the page length can be changed in the view.
Enable page size change control
Enable or disable the control to change the page size interactively in the view.
Selectable page sizes
Define a comma-separated list of allowed page sizes for the page size control.
Add 'All' option to page sizes
When checked, an additional 'All' option will be available in the page size control.
Enable selection
If checked a separate column containing checkboxes is rendered in the view. The selection, when applied, will be represented in the output table as a new boolean column.
Enable 'Clear Selection' button
If checked a button is displayed above the table, to clear any selection that is applied to the table, regardless of current search and/or filter settings. In 'single selection' mode this button is rendered in the column header of the radio buttons.
Multiple selection / Single selection
Option to choose between different modes of selection. In 'single selection' radio buttons are rendered in front of each row to allow for one row being selected. In 'multiple selection' mode check boxes are rendered to allow for multiple selected rows. Only in this mode can the table also subscribe to selection events, which are created by other views and the 'show selected rows only' option be used.
Show selected rows only
If checked, only rows which are selected are displayed.
Enable 'Show selected rows only' option
If checked, a checkbox to switch on and off the mode of displaying only selected rows is rendered in the view.
Publish selection events
If checked, notifies other interactive views when user changes the selection in the current view. See also "Subscribe to selection events".
Subscribe to selection events
If checked, the view reacts on notifications from other interactive views that the selection has been changed. See also "Publish selection events".
Selection column name
The name of the boolean column containing the selection.
Enable searching
Enable or disable the global search field.
Enable search for individual columns
Enable or disable search fields on each individual column.
Subscribe to filter events
If checked, the view reacts when applied filters have been changed.
Enable sorting on columns
Enable or disable the sorting functionality for each column.
Enable 'Clear Sorting' button
If checked a button is displayed above the table, to clear any sorting that is applied to the table and restore the row order to the initial state.

Formatters

The JavaScript Table View maps the KNIME table data types to types in JavaScript. The types that can be displayed are:

  • Boolean
  • Number (double, integer, etc.)
  • String
  • Date and Time (legacy)
  • Zoned Date and Time
  • Local Date and Time
  • Local Date
  • Local Time
  • PNG
  • SVG
All other data types will be treated as UNKNOWN types. The node tries to display them by extracting their respective standard string representation.

If you wish to customize the format for certain data types you can use the following options. For unknown types the formatting has to be applied in preceding nodes.

Date and Time types Date and Time values are converted into string using the selected or entered conversion pattern as defined by moment.js. Examples:
  • "dddd, MMMM Do YYYY, h:mm:ss a" formats dates like "Sunday, February 14th 2010, 3:25:50 pm"
  • "ddd, hA" formats dates like "Sun, 3PM"
  • "YYYY-MM-DDTHH:mm:ssZ" formats dates as defined by ISO 8601.
Some valid pattern elements are:
  • Y: year
  • Q: quarter
  • M: month of year
  • W: week of year
  • DDD: day of year
  • D: day of month
  • d: day of week
  • dd: day of week (Su Mo ... Fr Sa)
  • a: am/pm marker
  • H: hour in day (0-23)
  • k: hour in day (1-24)
  • h: hour in am/pm (1-12)
  • m: minute in hour
  • s: second in minute
  • S: millisecond
  • z: Time zone (EST CST ... MST PST)
  • Z: Time zone (offset)
  • X: unix timestamp
Localized formats:
  • LT: Time (e.g. 8:30 PM)
  • LTS: Time with seconds (e.g. 8:30:25 PM)
  • L: Month numeral (0 padded), day of month (0 padded), year (e.g. 09/04/1986)
  • l: Month numeral, day of month, year (e.g. 9/4/1986)
  • LL: Month name, day of month, year (e.g. September 4 1986)
  • ll: Month name (short), day of month, year (e.g. Sep 4 1986)
  • LLL: Month name, day of month, year, time (e.g. September 4 1986 8:30 PM)
  • lll: Month name (short), day of month, year, time (e.g. Sep 4 1986 8:30 PM)
  • LLLL: Month name, day of month, day of week, year, time (e.g. Thursday, September 4 1986 8:30 PM)
  • llll: Month name (short), day of month, day of week (short), year, time (e.g. Thu, Sep 4 1986 8:30 PM)
For printing an arbitrary string, wrap the string in square brackets, e.g. '[today] dddd'.

Locale
The locale which is used to render all date/time cells.
Local Date format
A global format, which is applied to all locale date cells. To format the string the framework Moment.js is used.
Local Date and Time format
A global format, which is applied to all local date/time cells. To format the string the framework Moment.js is used.
Local Time format
A global format, which is applied to all local time cells. To format the string the framework Moment.js is used.
Zoned Date and Time format
A global format, which is applied to all zoned date/time cells. To format the string the framework Moment.js is used.
Date and Time (legacy) format
A global format, which is applied to all date/time (legacy) cells. To format the string the framework Moment.js is used.
Enable global number format (double cells)
If checked the option beneath will be applied to all columns of type Double.
Decimal places
If number format is enabled use this value to restrict the display of decimal places for double columns in the table view.
Display missing value as red question mark
If checked, a missing value in the table view is represented by a red question mark. Otherwise, an empty cell is shown.

Input Ports

Icon
Input table to display.

Output Ports

Icon
Data table containing the input data appended with a column, that represents the selection made in the table view.

Popular Predecessors

Views

Interactive View: JavaScript Table Editor
Displays the data in a table view.

Workflows

Links

Developers

You want to see the source code for this node? Click the following button and we’ll use our super-powers to find it for you.