Defining Events
To capture any action on the rows in the grid, such as click or double-click, you must define events in the Row Template.
Note |
---|
You must define the events for the Row Template in the template file and capture the related actions in the JavaScript file for your application. |
The Row Template supports the following events:
- Cell Click and Row Click events
- Cell Double-Click and Row Double-Click events
- Change event
- Context Click event
Anchor RowTemplate_CellClickRowClick RowTemplate_CellClickRowClick
Cell Click and Row Click Events
RowTemplate_CellClickRowClick | |
RowTemplate_CellClickRowClick |
The Cell Click event occurs when a cell is clicked once. The Cell Click event also raises the Row Click event.
The Row Click event occurs when a row is clicked once.
Note |
---|
For the Cell Click and Row Click events to function, the attribute data-single-click = "true" must be defined. As we are configuring the template for a row, we need to define the attributes data-item-id = "ct-tpl-record" and data-row-index = "{{index}}" as well. |
...
On a Row Click event, the column ID is returned followed by the row details and the template configuration (value) as shown in the following screen shot:
To capture actions through the Cell Click and Row Click events, use the event handler functions. For the Deposit Summary app, you need to capture the actions as follows:
Cell Click event
Code Block language js CWEH.registerHandler('WGT_DEPOSIT_SUMMARY’, CWEC.CELL_CLICK, function(columnId, value, record) { LOGGER.info('The CELL_CLICK event is captured.', [columnId, value, record]); }); // Here, 'WGT_DEPOSIT_SUMMARY' is the widget ID.
Row Click event
Code Block language js CWEH.registerHandler('WGT_DEPOSIT_SUMMARY’, CWEC.CELL_DBLCLICK, function(columnId, value, record) { LOGGER.info('The CELL_DBLCLICK event is captured.', [columnId, value, record]); }); // Here, 'WGT_DEPOSIT_SUMMARY' is the widget ID.
...
Cell Double Click event
Code Block language js CWEH.registerHandler('WGT_DEPOSIT_SUMMARY’, CWEC.CELL_DBLCLICK, function(columnId, value, record) { LOGGER.info('The CELL_DBLCLICK event is captured.', [columnId, value, record]); }); // Here, 'WGT_DEPOSIT_SUMMARY' is the widget ID.
Row Double Click event
Code Block language js CWEH.registerHandler('WGT_DEPOSIT_SUMMARY’, CWEC.ROW_DBLCLICK, function(columnId, record, value) { LOGGER.info('The ROW_DBLCLICK event is captured.', [columnId, record, value]); }); // Here, 'WGT_DEPOSIT_SUMMARY' is the widget ID.
Anchor | ||||
---|---|---|---|---|
|
The Change event occurs when the value of an element is changed. For example, selecting or clearing a checkbox or radio button. The change event also raises the cell click and row click events.
Note |
---|
The Change event is applicable only for checkboxes and radio buttons. For the Change event to function, the attribute data-input = "true" must be defined. As we are configuring the template for a row, we need to define the attributes data-item-id = "ct-tpl-record" and data-row-index = "{{index}}" as well. |
For example, when you select and clear the checkbox on a cell of the Deposit Summary widget, the Change event is triggered.
To achieve this, you can configure the template as follows:
Code Block | ||
---|---|---|
| ||
<div class = 'col-lg-6' style = 'border: 1px solid #ccc;'> {{ #each record }} <div class = "{{ this.cssClass }} text-center" data-item-id = "ct-tpl-record" data-item-data = "{{ this.COL_INDEX }}" data-input = 'true' data-row-index = "{{ this.rowIndex }}" data-single-click = 'true' data-column-id = '{{ this.COL_ID }}' data-context-click = 'true' > <b> <input type = "checkbox"/> {{{ this.VALUE }}} </b> </div> {{ /each }} </div> |
When you select the checkbox the Change event triggers and the column ID followed by the template configuration (value) and the row details are returned. An additional attribute data-checked = ”checked” is added to the template configuration. When the checkbox is cleared this attribute gets removed from the template configuration as shown in the following screen shots:
After selecting the checkbox:
After clearing the checkbox:
To capture actions through the Change event, use the event handler functions. For the Deposit Summary app, you need to capture the actions as follows:
Code Block | ||
---|---|---|
| ||
CWEH.registerHandler('WGT_DEPOSIT_SUMMARY’, CWEC.CELL_DATA_CHANGE, function(columnId, value, record)
{
LOGGER.info('The CELL_DATA_CHANGE event is captured.’, [columnId, value, record]);
});
// Here, 'WGT_DEPOSIT_SUMMARY' is the widget ID. |