Options
All
  • Public
  • Public/Protected
  • All
Menu

PrimeFaces DataTable with Frozen Columns Widget

Type Parameters

Hierarchy

Index

Constructors

Properties

Methods

Constructors

  • Creates a new instance of this widget. Please note that you should NOT override this constructor. Instead, override the init method, which is called at the end of the constructor once the instance is created.

    Type Parameters

    Parameters

    • cfg: PartialWidgetCfg<TCfg>

      The widget configuration to be used for this widget instance. This widget configuration is usually created on the server by the javax.faces.render.Renderer for this component.

    Returns FrozenDataTable<TCfg>

Properties

SORT_ORDER: Record<PrimeFaces.widget.DataTable.SortOrder, 0 | 1 | -1>

Map between the sort order names and the multiplier for the comparator.

allLoadedLiveScroll: boolean

Whether all available items were already loaded.

ascMessage?: string

Localized message for sorting a column in ascending order.

bodyTable: JQuery<HTMLElement>

The DOM element for the body part of the table.

cacheMap: Record<number, string>

Cache for the contents of a row. Key is the row index, value the HTML content of the row.

cacheRows: number

Number of rows to cache.

cfg: PartialWidgetCfg<TCfg>

The configuration of this widget instance. Please note that no property is guaranteed to be present, you should always check for undefined before accessing a property. This is partly because the value of a property is not transmitted from the server to the client when it equals the default.

checkAllToggler: JQuery<HTMLElement>

DOM element of the container with the check all checkbox in the header.

clone: JQuery<HTMLElement>

Clone of the table header.

columnWidthsFixed: boolean

Whether column widths are fixed or may be resized.

contextMenuCell?: JQuery<HTMLElement>

DOM element of the table cell for which the context menu was opened.

contextMenuWidget: ContextMenu<ContextMenuCfg>

Widget with the context menu for the DataTable.

currentCell: JQuery<HTMLElement>

Current cell to be edited.

cursorRowMeta: null | RowMeta

0-based index of row where the the cursor is located.

descMessage?: string

Localized message for sorting a column in descending order.

Array of registered listeners invoked when this widget is destroyed. You should normally not use modify this directly, use addDestroyListener instead.

dragIndicatorBottom: JQuery<HTMLElement>

DOM element of the icon that indicates a column is draggable.

dragIndicatorTop: JQuery<HTMLElement>

DOM element of the icon that indicates a column is draggable.

expansionHolder?: JQuery<HTMLElement>

DOM element of the hidden input that holds the row keys of the rows that are expanded. Used to preserve the expansion state during AJAX updates.

expansionProcess: number[]

List of row indices to expand.

filterTimeout: number

ID as returned by setTimeout used during filtering.

focusedRow: null | JQuery<HTMLElement>

DOM element of the currently focused row.

focusedRowWithCheckbox: boolean

Whether the focused row includes the checkbox for selecting the row.

footerCols: JQuery<HTMLElement>

The DOM elements for the footer columns.

footerTable: JQuery<HTMLElement>

The DOM elements for the footer table.

frozenBody: JQuery<HTMLElement>

The DOM element for the frozen body.

frozenBodyTable: JQuery<HTMLElement>

The DOM element for the frozen body TABLE.

frozenColgroup: undefined

Always undefined and not used.

frozenContainer: JQuery<HTMLElement>

The DOM element for the container of the frozen table.

frozenFooter: JQuery<HTMLElement>

The DOM element for the frozen footer.

frozenFooterCols: JQuery<HTMLElement>

The DOM elements for the frozen columns of the footer.

frozenFooterTable: JQuery<HTMLElement>

The DOM element for the frozen data table footer TABLE.

frozenGroupResizers: JQuery<HTMLElement>

The DOM element for the frozen group resizers of the footer.

frozenHeader: JQuery<HTMLElement>

The DOM element for the frozen header.

frozenLayout: JQuery<HTMLElement>

The DOM element for the frozen layout container.

frozenTbody: JQuery<HTMLElement>

The DOM element for the header TBODY.

frozenTfoot: JQuery<HTMLElement>

The DOM element for the header TFOOT.

frozenThead: JQuery<HTMLElement>

The DOM element for the header THEAD.

frozenTheadClone: JQuery<HTMLElement>

The DOM element for the clone of the frozen THEAD.

groupResizers: JQuery<HTMLElement>

The DOM elements for the resizer button of each group.

hasColumnGroup: boolean

Whether the table has any column groups.

headerTable: JQuery<HTMLElement>

The DOM elements for the header table.

headers: JQuery<HTMLElement>

DOM elements for the TH headers of this DataTable.

id: string | string[]

The client-side ID of this widget, with all parent naming containers, such as myForm:myWidget. This is also the ID of the container HTML element for this widget. In case the widget needs multiple container elements (such as Paginator), this may also be an array if IDs.

ignoreRowHoverEvent: boolean

Whether to ignore row hover event.

isRTL: boolean

Whether the writing direction is set to right-to-left.

isRowTogglerClicked: boolean

Whether a row toggler was clicked.

jq: JQuery<HTMLElement>

The jQuery instance of the container element of this widget. In case id is an array, it will contain multiple elements. Please note that some widgets have got not DOM elements at all, in this case this will be an empty jQuery instance.

jqId: string

A CSS selector for the container element (or elements, in case id is an array) of this widget, This is usually an ID selector (that is properly escaped). You can select the container element or elements like this: $(widget.jqId).

liveScrollActive: boolean

Whether live scrolling is currently active.

loadedExpansionRows?: string[]

List of row keys of the expansion rows that had their content already loaded via AJAX.

loadingLiveScroll: boolean

Whether data is currently being loaded due to the live scrolling feature.

mousedownOnRow: boolean

Whether a mousedown event occurred on a row.

orderStateHolder: JQuery<HTMLElement>

INPUT element storing the current column / row order.

originRowMeta: null | RowMeta

The original row index of the row that was clicked.

otherMessage?: string

Localized message for removing the sort order and showing rows in their original order.

When pagination is enabled: The paginator widget instance used for paging.

percentageScrollHeight: boolean

The current relative vertical scroll position.

percentageScrollWidth: boolean

The current relative horizontal scroll position.

reflowDD: boolean

true if reflow is enabled, false otherwise.

Array of registered listeners invoked when this widget is refreshed. You should normally not use modify this directly, use addRefreshListener instead.

relativeHeight: number

The height of the table viewport, relative to the total height, used for scrolling.

resizableState: string[]

A list with the current widths for each resizable column.

resizableStateHolder: JQuery<HTMLElement>

INPUT element storing the current widths for each resizable column.

resizeTimeout: number

The set-timeout timer ID of the timer used for resizing.

resizerHelper: JQuery<HTMLElement>

The DOM element for the resize helper.

rowHeight?: number

Constant height in pixels for each row, when virtual scrolling is enabled.

rowSelector: string

The CSS selector for the table rows.

rowSelectorForRowClick: string

The CSS selector for the table rows that can be clicked.

scrollBody: JQuery<HTMLElement>

The DOM element for the scrollable body of the table.

scrollBodyTable: JQuery<HTMLElement>

The DOM element for the TABLE of the scrollable body.

scrollColgroup: undefined

Always undefined and not used.

scrollContainer: JQuery<HTMLElement>

The DOM element for the container of the scrollable body.

scrollFooter: JQuery<HTMLElement>

The DOM element for the scrollable body of the table.

scrollFooterBox: JQuery<HTMLElement>

The DOM element for the scrollable footer box of the table.

scrollFooterCols: JQuery<HTMLElement>

The DOM element for the scrollable columns of the footer.

scrollFooterTable: JQuery<HTMLElement>

The DOM element for the TABLE of the scrollable footer.

scrollGroupResizers: JQuery<HTMLElement>

The DOM element for the group resizers of the scrollable body.

scrollHeader: JQuery<HTMLElement>

The DOM element for the scrollable header of the table.

scrollHeaderBox: JQuery<HTMLElement>

The DOM element for the scrollable header box of the table.

scrollHeaderTable: JQuery<HTMLElement>

The DOM element for the TABLE of the scrollable header.

scrollLayout: JQuery<HTMLElement>

The DOM element for the scrollable layout container.

scrollOffset: number

The current scroll position.

scrollStateHolder: JQuery<HTMLElement>

INPUT element storing the current scroll position.

scrollTbody: JQuery<HTMLElement>

The DOM element for the scrollable TBODY.

scrollTfoot: JQuery<HTMLElement>

The DOM element for the scrollable TFOOT.

scrollThead: JQuery<HTMLElement>

The DOM element for the scrollable THEAD.

scrollTheadClone: JQuery<HTMLElement>

The DOM element for the clone of the scrollable THEAD.

scrollTimeout: number

The set-timeout timer ID of the timer used for scrolling.

scrollbarWidth: string

CSS attribute for the scrollbar width, eg. 20px.

selection: string[]

List of row keys for the currently selected rows.

selectionHolder: string

ID of the INPUT element storing the currently selected rows.

shouldLiveScroll: boolean

Whether live scrolling is currently enabled.

sortMeta: Record<string, SortMeta>

Information about how each column is sorted. Key is the column key.

sortableColumns: JQuery<HTMLElement>

DOM elements for the columns that are sortable.

stickyContainer: JQuery<HTMLElement>

The DOM element for the sticky container of the table.

tbody: JQuery<HTMLElement>

DOM element of the TBODY element of this DataTable, if it exists.

tfoot: JQuery<HTMLElement>

DOM element of the TFOOT element of this DataTable, if it exists.

thead: JQuery<HTMLElement>

DOM element of the THEAD element of this DataTable, if it exists.

theadClone: JQuery<HTMLElement>

The DOM element for the cloned table head.

virtualScrollActive: boolean

Whether virtual scrolling is currently active.

widgetVar: string

The name of the widget variables of this widget. The widget variable can be used to access a widget instance by calling PF('myWidgetVar').

Methods

  • _addGhostRow(body: JQuery<HTMLElement>, header: JQuery<HTMLElement>, headerClone: JQuery<HTMLElement>, footerTable: JQuery<HTMLElement>, columnClass?: string): void
  • Adds an invisible row for internal purposes.

    Parameters

    • body: JQuery<HTMLElement>

      Body of this data table.

    • header: JQuery<HTMLElement>

      Header of this data table.

    • headerClone: JQuery<HTMLElement>

      Cloned header of this data table, see method cloneHead.

    • footerTable: JQuery<HTMLElement>

      Footer of this data table.

    • Optional columnClass: string

      Optional CSS class for the ghost columns.

    Returns void

  • Finds the resizer DOM element that matches the given draggable event params.

    Parameters

    Returns null | JQuery<HTMLElement>

    DOM element of the resizer.

  • _fixColumnWidths(header: JQuery<HTMLElement>, footerCols: JQuery<HTMLElement>): void
  • Adjusts the width of the given columns to fit the current settings.

    Parameters

    • header: JQuery<HTMLElement>

      Header of this data table.

    • footerCols: JQuery<HTMLElement>

      The columns to adjust.

    Returns void

  • _render(): void
  • This render method is called by this deferred widget once the widget container has become visible. You may now proceed with widget initialization.

    Must be overridden, or an error will be thrown.

    override

    Returns void

  • addDeferredRender(widgetId: string, container: JQuery<HTMLElement>, callback: (() => boolean)): void
  • Adds a deferred rendering task for the given widget to the queue.

    Parameters

    • widgetId: string

      The ID of a deferred widget.

    • container: JQuery<HTMLElement>

      The container element that should be visible.

    • callback: (() => boolean)

      Callback that is invoked when the widget may possibly have become visible. Should return true when the widget was rendered, or false when the widget still needs to be rendered later.

        • (): boolean
        • Returns boolean

    Returns void

  • Lets you register a listener that is called before the component is destroyed.

    When an AJAX call is made and this component is updated, the DOM element is replaced with the newly rendered content. When the element is removed from the DOM by the update, the DOM element is detached from the DOM and all destroy listeners are called. This makes it possible to add listeners from outside the widget code.

    If you call this method twice with the same listener, it will be registered twice and later also called twice.

    Note that for this to work, you must not override the destroy method; or if you do, call super.

    Also, after this widget was detached is done, all destroy listeners will be unregistered.

    since

    7.0

    Parameters

    Returns void

  • addGhostRow(): void
  • Adds and sets up an invisible row for internal purposes.

    override

    Returns void

  • When an AJAX call is made and this component is updated, the DOM element is replaced with the newly rendered content. However, no new instance of the widget is created. Instead, after the DOM element was replaced, all refresh listeners are called. This makes it possible to add listeners from outside the widget code.

    If you call this method twice with the same listener, it will be registered twice and later also called twice.

    Note that for this to work, you must not override the refresh method; or if you do, call super.

    Also, after the refresh is done, all refresh listeners will be deregistered. If you added the listeners from within this widget, consider adding the refresh listeners not only in the init method, but also again in the refresh method after calling super.

    since

    7.0.0

    Parameters

    Returns void

  • addResizers(): void
  • Adds the resizers for change the width of a column of this DataTable.

    override

    Returns void

  • addRow(): void
  • Fetches the last row from the backend and inserts a row instead of updating the table itself.

    Returns void

  • adjustScrollHeight(): void
  • Adjusts the height of the body of this DataTable for the current scrolling settings.

    override

    Returns void

  • adjustScrollWidth(): void
  • Adjusts the width of the header, body, and footer of this DataTable to fit the current settings.

    override

    Returns void

  • assignFocusedRow(row: JQuery<HTMLElement>): void
  • Stores the row which is currently focused.

    override

    Parameters

    • row: JQuery<HTMLElement>

      Row to set as the focused row.

    Returns void

  • bindCheckboxEvents(): void
  • Callback that is invoked when the context menu is initialized. Lets the context menu provider register the appropriate event listeners for when the context menu should be shown and hidden.

    override

    Parameters

    • menuWidget: ContextMenu<ContextMenuCfg>

      The widget instance of the context menu.

    • targetWidget: DataTable<DataTableCfg>

      The widget instance of the target widget that wants to add a context menu.

    • targetId: string

      ID selector or DOM element of the target, i.e. the element the context menu belongs to.

    • cfg: ContextMenuCfg

      The current configuration of the context menu.

    Returns void

  • bindExpansionEvents(): void
  • bindRadioEvents(): void
  • Sets up the event listeners for radio buttons contained in this DataTable.

    Returns void

  • bindRowHover(selector: string): void
  • Sets up the event listeners for hovering over a DataTable row.

    override

    Parameters

    • selector: string

      Selector for the row elements. Any hover event that does not reach an element that matches this selector will be ignored.

    Returns void

  • bindToggleRowGroupEvents(): void
  • Each widget may have one or several behaviors attached to it. This method calls all attached behaviors for the given event name. In case no such behavior exists, this method does nothing and returns immediately.

    A behavior is a way for associating client-side scripts with UI components that opens all sorts of possibilities, including client-side validation, DOM and style manipulation, keyboard handling, and more. When the behavior is triggered, the configured JavaScript gets executed.

    Behaviors are often, but not necessarily, AJAX behavior. When triggered, it initiates a request the server and processes the response once it is received. This enables several features such as updating or replacing elements dynamically. You can add an AJAX behavior via <p:ajax event="name" actionListener="#{...}" onstart="..." />.

    since

    7.0

    Parameters

    • event: string

      The name of an event to call.

    • Optional ext: Partial<ConfigurationExtender>

      Additional configuration that is passed to the AJAX request for the server-side callback.

    Returns void

  • cancelRowEdit(rowEditor: JQuery<HTMLElement>): void
  • When the given row is currently being edited, cancel the editing operation and discard the entered data. Use findRow to get a row by its index.

    Parameters

    • rowEditor: JQuery<HTMLElement>

      A row (TR) in edit mode.

    Returns void

  • clearFilters(): void
  • Clears all table filters and shows all rows that may have been hidden by filters.

    Returns void

  • cloneHead(): void
  • Creates and stores a cloned copy of the table head(er) of this DataTable, and sets up some event handlers.

    override

    Returns void

  • collapseAllRows(): void
  • collapseRow(row: JQuery<HTMLElement>): void
  • Collapses the given row, if it is expandable. Use findRow to get a row by its index. Does not update the row expansion toggler button.

    override

    Parameters

    • row: JQuery<HTMLElement>

      Row to collapse.

    Returns void

  • Clones the given row and returns it

    Parameters

    • original: JQuery<HTMLElement>

      DOM element of the original row.

    Returns JQuery<HTMLElement>

    The cloned row.

  • destroy(): void
  • Cleans up deferred render tasks. When you extend this class and override this method, make sure to call super.

    override

    Returns void

  • displayExpandedRow(row: JQuery<HTMLElement>, content: string): void
  • Display the given HTML string in the specified row. Called mainly after an AJAX request.

    override

    Parameters

    • row: JQuery<HTMLElement>

      Row to display.

    • content: string

      HTML string of the content to add to the row

    Returns void

  • filter(): void
  • Filters this DataTable. Uses the current values of the filter inputs. This will result in an AJAX request being sent.

    Returns void

  • Finds the group resizer element for the given drag event data.

    override

    Parameters

    Returns null | JQuery<HTMLElement>

    The resizer DOM element.

  • Converts a row specifier to the row element. The row specifier is either a row index or the row element itself.

    In case this DataTable has got expandable rows, please not that a new table row is created for each expanded row. This may result in the given index not pointing to the intended row.

    Parameters

    Returns JQuery<HTMLElement>

    The row, or an empty JQuery instance of no row was found.

  • fixColumnWidths(): void
  • Adjusts the width of the given columns to fit the current settings.

    override

    Returns void

  • fixRowHeights(scrollRows: JQuery<HTMLElement>, frozenRows: JQuery<HTMLElement>): void
  • Adjusts the height of the given rows to fit the current settings.

    Parameters

    • scrollRows: JQuery<HTMLElement>

      The scrollable rows to adjust.

    • frozenRows: JQuery<HTMLElement>

      The frozen rows to adjust.

    Returns void

  • fixRowHeightsAll(): void
  • Adjusts the height of all rows to fit the current settings.

    Returns void

  • getBehavior(name: string): null | Behavior
  • Each widget may have one or several behaviors attached to it. This method returns the callback function for the given event.

    Note: Do not call the method directly, the recommended way to invoke a behavior is via callBehavior.

    A behavior is a way for associating client-side scripts with UI components that opens all sorts of possibilities, including client-side validation, DOM and style manipulation, keyboard handling, and more. When the behavior is triggered, the configured JavaScript gets executed.

    Behaviors are often, but not necessarily, AJAX behavior. When triggered, it initiates a request the server and processes the response once it is received. This enables several features such as updating or replacing elements dynamically. You can add an AJAX behavior via <p:ajax event="name" actionListener="#{...}" onstart="..." />.

    Parameters

    • name: string

      The name of an event for which to retrieve the behavior.

    Returns null | Behavior

    The behavior with the given name, or null if no such behavior exists.

  • getCellMeta(cell: JQuery<HTMLElement>): string
  • Finds the meta data for a given cell.

    Parameters

    • cell: JQuery<HTMLElement>

      A cell for which to get the meta data.

    Returns string

    The meta data of the given cell or NULL if not found

  • getExpandedRows(): JQuery<HTMLElement>
  • Finds the list of row that are currently expanded.

    override

    Returns JQuery<HTMLElement>

    All rows (TR) that are currently expanded.

  • getFocusableTbody(): JQuery<HTMLElement>
  • Finds the body of this DataTable with the property that the user can focus it.

    override

    Returns JQuery<HTMLElement>

    The body of this DataTable.

  • Each widget has got a container element, this method returns that container. This container element is usually also the element whose ID is the client-side ID of the JSF component.

    Returns JQuery<HTMLElement>

    The jQuery instance representing the main HTML container element of this widget.

  • getParentForm(): JQuery<HTMLElement>
  • Gets the closest parent form for this widget.

    since

    10.0.0

    Returns JQuery<HTMLElement>

    A JQuery instance that either contains the form when found, or an empty JQuery instance when the form could not be found.

  • getParentFormId(): undefined | string
  • Gets the closest parent form ID for this widget lazily so it can be used in AJAX requests.

    since

    10.0.0

    Returns undefined | string

    Either the form ID or undefined if no form can be found.

  • getRowEditors(row: JQuery<HTMLElement>): JQuery<HTMLElement>
  • Finds all editors of a row. Usually each editable column has got an editor.

    override

    Parameters

    • row: JQuery<HTMLElement>

      A row for which to find its row editors.

    Returns JQuery<HTMLElement>

    A list of row editors for each editable column of the given row

  • Finds the index and the row key for the given row.

    Parameters

    • row: JQuery<HTMLElement>

      The element (TR) of a row of this DataTable.

    Returns RowMeta

    The meta for the row with the index and the row key.

  • getSelectedRowsCount(): number
  • Finds the number of rows that are selected.

    Returns number

    The number of rows that are currently selected.

  • getTbody(): JQuery<HTMLElement>
  • Retrieves the table body of this DataTable.

    override

    Returns JQuery<HTMLElement>

    DOM element of the table body.

  • getTfoot(): JQuery<HTMLElement>
  • Retrieves the table footer of this DataTable.

    override

    Returns JQuery<HTMLElement>

    DOM element of the table footer.

  • getThead(): JQuery<HTMLElement>
  • Retrieves the table header of this DataTable.

    override

    Returns JQuery<HTMLElement>

    DOM element of the table header.

  • Finds the twin row of the given row. The data table body has got two sets of rows.

    Parameters

    • row: JQuery<HTMLElement>

      Row for which to find the twin

    Returns JQuery<HTMLElement>

    DOM element of the twin row.

  • groupRows(): void
  • When row grouping is enabled, groups all rows accordingly.

    override

    Returns void

  • hasBehavior(event: string): boolean
  • Each widget may have one or several behaviors attached to it. This method checks whether this widget has got at least one behavior associated with given event name.

    A behavior is a way for associating client-side scripts with UI components that opens all sorts of possibilities, including client-side validation, DOM and style manipulation, keyboard handling, and more. When the behavior is triggered, the configured JavaScript gets executed.

    Behaviors are often, but not necessarily, AJAX behavior. When triggered, it initiates a request the server and processes the response once it is received. This enables several features such as updating or replacing elements dynamically. You can add an AJAX behavior via <p:ajax event="name" actionListener="#{...}" onstart="..." />.

    Parameters

    • event: string

      The name of an event to check.

    Returns boolean

    true if this widget has the given behavior, false otherwise.

  • hasColGroup(): boolean
  • Checks whether this DataTable has got any column groups.

    override

    Returns boolean

    true if this DataTable has got any column groups, or false otherwise.

  • hasVerticalOverflow(): boolean
  • Checks whether the body of this DataTable overflow vertically.

    override

    Returns boolean

    true if any content overflow vertically, false otherwise.

  • highlightFocusedRow(): void
  • Highlights the currently focused row (if any) by adding the appropriate CSS class.

    override

    Returns void

  • highlightRow(row: JQuery<HTMLElement>): void
  • Highlights row to mark it as selected.

    override

    Parameters

    • row: JQuery<HTMLElement>

      Row to highlight.

    Returns void

  • A widget class should not declare an explicit constructor, the default constructor provided by this base widget should be used. Instead, override this initialize method which is called after the widget instance was constructed. You can use this method to perform any initialization that is required. For widgets that need to create custom HTML on the client-side this is also the place where you should call your render method.

    Please make sure to call the super method first before adding your own custom logic to the init method:

    PrimeFaces.widget.MyWidget = PrimeFaces.widget.BaseWidget.extend({
    init: function(cfg) {
    this._super(cfg);
    // custom initialization
    }
    });
    override

    Parameters

    • cfg: PartialWidgetCfg<TCfg>

      The widget configuration to be used for this widget instance. This widget configuration is usually created on the server by the javax.faces.render.Renderer for this component.

    Returns void

  • invalidateRow(index: number): void
  • Displays row editors in invalid format.

    override

    Parameters

    • index: number

      0-based index of the row to invalidate.

    Returns void

  • isCheckboxSelectionEnabled(): boolean
  • Checks whether the rows of this DataTable are selected via checkboxes.

    Returns boolean

    true if selection mode is set to checkbox, or false otherwise.

  • isDetached(): boolean
  • Checks if this widget is detached, ie whether the HTML element of this widget is currently contained within the DOM (the HTML body element). A widget may become detached during an AJAX update, and it may remain detached in case the update removed this component from the component tree.

    Returns boolean

    true if this widget is currently detached, or false otherwise.

  • isEmpty(): boolean
  • Checks whether this DataTable has got any rows. When there are no rows, usually the message no items found is shown.

    Returns boolean

    true if this DataTable has got no rows, false otherwise.

  • isMultipleSelection(): boolean
  • Checks whether multiples rows may be selected at a time.

    Returns boolean

    true if selection mode is set to multiple, or false otherwise.

  • isRadioSelectionEnabled(): boolean
  • Checks whether the rows of this DataTable are selected via radio buttons.

    Returns boolean

    true if selection mode is set to radio, or false otherwise.

  • isSelected(rowKey: string): boolean
  • Checks whether the given row is currently selected.

    Parameters

    • rowKey: string

      The key of a row from this DataTable.

    Returns boolean

    true if the given row is currently selected, or false otherwise.

  • isSelectionEnabled(): boolean
  • Checks whether the user may select the rows of this DataTable.

    Returns boolean

    true is rows may be selected, or false otherwise.

  • isSingleSelection(): boolean
  • Checks whether only one row may be selected at a time.

    Returns boolean

    true if selection mode is set to single, or false otherwise.

  • loadLiveRows(): void
  • Use only when live scrolling is enabled: Loads the next set of rows on-the-fly.

    Returns void

  • postRender(): void
  • Called after the widget has become visible and after it was rendered. May be overridden, the default implementation is a no-op.

    Returns void

  • Used in ajax updates, reloads the widget configuration.

    When an AJAX call is made and this component is updated, the DOM element is replaced with the newly rendered content. However, no new instance of the widget is created. Instead, after the DOM element was replaced, this method is called with the new widget configuration from the server. This makes it possible to persist client-side state during an update, such as the currently selected tab.

    Please note that instead of overriding this method, you should consider adding a refresh listener instead via addRefreshListener. This has the advantage of letting you add multiple listeners, and makes it possible to add additional listeners from code outside this widget.

    By default, this method calls all refresh listeners, then reinitializes the widget by calling the init method.

    override

    Parameters

    Returns void

    The value as returned by the init method, which is often undefined.

  • removeScriptElement(clientId: string | string[]): void
  • Removes the widget's script block from the DOM. Currently, the ID of this script block consists of the client-side ID of this widget with the prefix _s, but this is subject to change.

    Parameters

    • clientId: string | string[]

      The client-side ID of the widget.

    Returns void

  • This render method to check whether the widget container is visible. Do not override this method, or the deferred widget functionality may not work properly anymore.

    Returns ReturnOrVoid<undefined | boolean>

    true if the widget container is visible, false or undefined otherwise.

  • renderDeferred(): void
  • Call this method in the init method if you want deferred rendering support. This method checks whether the container of this widget is visible and call _render only once it is.

    Returns void

  • resetVirtualScrollBody(): void
  • Resizes this DataTable, row, or columns in response to a drag event of a resizer element.

    override

    Parameters

    Returns void

  • saveCell(cell: JQuery<HTMLElement>): void
  • After the user is done editing a cell, saves the content of the given cell and switches back to view mode.

    Parameters

    • cell: JQuery<HTMLElement>

      A cell (TD) in edit mode.

    Returns void

  • saveColumnOrder(): void
  • Saves the current column order, used to preserve the state between AJAX updates etc.

    override

    Returns void

  • saveRowEdit(rowEditor: JQuery<HTMLElement>): void
  • When the given row is currently being edited, saves the contents of the edited row and switch back to view mode. Use findRow to get a row by its index.

    Parameters

    • rowEditor: JQuery<HTMLElement>

      A row (TR) in edit mode to save.

    Returns void

  • selectAllRows(): void
  • Selects all rows of this DataTable so that no rows are selected. This includes all rows on all pages, irrespective of whether they are on the currently shown page.

    Returns void

  • selectAllRowsOnPage(): void
  • Selects the given row, according to the current selection mode.

    Parameters

    • r: RowSpecifier

      A row of this DataTable to select.

    • Optional silent: boolean

      true to prevent behaviors and event listeners from being invoked, or false otherwise.

    Returns void

  • setScrollWidth(width: number): void
  • Applies the given scroll width to this DataTable.

    override

    Parameters

    • width: number

      Scroll width in pixels to set.

    Returns void

  • setupScrolling(): void
  • Prepares this DataTable for the current scrolling settings and sets up all related event handlers.

    override

    Returns void

  • showCellEditor(c: JQuery<HTMLElement>): void
  • When cell editing is enabled, shows the cell editor for the given cell that lets the user edit the cell content.

    Parameters

    • c: JQuery<HTMLElement>

      A cell (TD) of this DataTable to edit.

    Returns void

  • showRowEditors(row: JQuery<HTMLElement>): void
  • Shows the row editor(s) for the given row (and hides the normal output display).

    override

    Parameters

    • row: JQuery<HTMLElement>

      Row for which to show the row editor.

    Returns void

  • switchToRowEdit(row: JQuery<HTMLElement>): void
  • Switch all editable columns of the given row to their editing mode, if editing is enabled on this DataTable. Use findRow to get a row by its index.

    Parameters

    • row: JQuery<HTMLElement>

      A row (TR) to switch to edit mode.

    Returns void

  • toggleCheckAll(): void
  • Toggles the selected all checkbox in the header of this DataTable. When no rows are selected, this will select all rows. When some rows are selected, this will unselect all rows.

    Returns void

  • toggleRow(row: JQuery<HTMLElement>): void
  • Expands or collapses the given row, depending on whether it is currently collapsed or expanded, respectively.

    Parameters

    • row: JQuery<HTMLElement>

      A row (TR) to expand or collapse.

    Returns void

  • unhighlightFocusedRow(): void
  • unhighlightRow(row: JQuery<HTMLElement>): void
  • Removes the highlight of a row so it is no longer marked as selected.

    override

    Parameters

    • row: JQuery<HTMLElement>

      Row to unhighlight.

    Returns void

  • unselectAllRows(): void
  • Unselects all rows of this DataTable so that no rows are selected. This includes all rows on all pages, irrespective of whether they are on the currently shown page.

    Returns void

  • unselectAllRowsOnPage(): void
  • Unselects the given row.

    Parameters

    • r: RowSpecifier

      A row of this DataTable to unselect.

    • Optional silent: boolean

      true to prevent behaviors and event listeners from being invoked, or false otherwise.

    Returns void

  • updateData(data: string, clear: undefined | boolean): void
  • Sets the given HTML string as the content of the body of this DataTable. Afterwards, sets up all required event listeners etc.

    override

    Parameters

    • data: string

      HTML string to set on the body.

    • clear: undefined | boolean

      Whether the contents of the table body should be removed beforehand.

    Returns void

  • updateRow(row: JQuery<HTMLElement>, content: string): void
  • Updates a row with the given content

    override

    Parameters

    • row: JQuery<HTMLElement>

      Row to update.

    • content: string

      HTML string to set on the row.

    Returns void

Generated using TypeDoc