You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 17 Current »

The SimpleWidget and SimpleWidgets client-side classes provide the methods for widget structure and functionality customization:

  • Use the s_widget object of the SimpleWidget class to implement the required functionality. The object becomes available when a widget you create is initialized.

  • Use the s_widgets object of the SimpleWidgets class to implement the required functionality. The object is initialized when you add a widget to a form or a portal page.

  • To create your own widget methods, use the s_widget_custom.

    These methods can only be used on the client-side.

SimpleWidget


s_widget


Use the s_widget object to perform the current widget customization with the methods below.

To manually invoke the method, pass the widget instance ID as the first parameter in the console. For example, to call the following method:

s_widget.getFieldValue(key); 

use the following approach:

s_widget.getFieldValue(widgetId, key);

s_widget.addTemplate(id, template, script, type)


Use this method to add a child template to the existing template by its ID with one of the following types: inner, before, after.

Parameters:

NameTypeMandatoryDefault value
idStringYN
templateStringYN
scriptString

This parameter is mandatory if you need to define the type parameter. If no script is needed, use an empty string ('') as in the example below.

N
typeStringN

inner 

Available options: inner, before, after.

Return:

TypeDescription
VoidThis method does not return a value.

Example:

Template
<div id="steps"></div>
Client script
s_widget.addTemplate('steps', '<div class="main">', '', 'inner');

s_widget.getElements()


Use this method to return the widget structure elements collected in an array.

Return:

TypeDescription
Array of HTML elementsThis method returns an array of the widget structure elements.

Example:

s_widget.getElements()
s_widget.getElements();

s_widget.getFieldValue(key)


Use this method to return the data value of the widget that is defined by the key option.

Parameter:

NameTypeMandatoryDefault value
keyStringYN

Return:

TypeDescription
AnyThis method returns the value of the field that is defined by the key.

Example:

s_widget.getFieldValue
s_widget.getFieldValue('element');

s_widget.getId()


Use this method to return a widget instance ID.

Return:

TypeDescription
StringThis method returns a widget instance ID.

Example:

s_widget.getId
s_widget.getId();

s_widget.getOptionValue(key)


Use this method to return an option value that is defined by the key.

Parameter:

NameTypeMandatoryDefault value
keyStringYN

Return:

TypeDescription
AnyThis method returns a value of the widget option that is defined by the key.

Example:

s_widget.getOptionValue
s_widget.getOptionValue('label');

s_widget.removeTemplate(id)


Use the method to remove all child nodes and content from the specified element. It does not remove the element itself or its attributes.

Parameter(s):

NameTypeMandatoryDefault value
idStringYN

Return:

TypeDescription
VoidThis method does not return a value.

Example:

Template
<div id="element1">
  Remove
</div>
<button buttonType="approve" event-click="window.s_widget_custom.remove();">
  Add
</button>
CSS
#element1 {
  background-color: yellow;
  height: 20px;
}
Client script
;
(() => {
    window.s_widget_custom = window.s_widget_custom || {};
    window.s_widget_custom.remove = function () {
        s_widget.removeTemplate('element1');
    } 
})();

s_widget.setFieldValue(key, value)


Use this method to set a value for the key.

If the value parameter is equal to null, for example, s_widget.setFieldValue ('subject', null), the defined field is cleared.

Parameters:

NameTypeMandatoryDefault value

key

StringYN
valueAnyYN

Return:

TypeDescription
VoidThis method does not return a value.

Example:

s_widget.setFieldValue
;
(async () => {
    const tableName = s_form.getTableName();
    const recordId = s_form.getUniqueValue();
    const serviceId = s_form.getValue('service');
    const serviceDisplayValue = s_form.getDisplayValue('service');

    s_widget.setFieldValue('table_name', tableName);
    s_widget.setFieldValue('record_id', recordId);
    s_widget.setFieldValue('service', { database_value: serviceId, display_value: serviceDisplayValue });
    await s_widget.serverUpdate();
})();


s_widget.serverUpdate()


Use this method to transfer the data to a server, where the widget server script runs. As a result, the widget data is updated.

Return:

TypeDescription
ObjectThis method returns a Promise object that contains a server response.

Example:

s_widget.serverUpdate
;
(async () => {
    const tableName = s_form.getTableName();
    const recordId = s_form.getUniqueValue();
    s_widget.setFieldValue('table_name', tableName);
    s_widget.setFieldValue('record_id', recordId);
    const response = await s_widget.serverUpdate();
    console.log(response.getData().data);
})();

s_widget.setOptionValue(key, value)


Use this method to set a value using the key of the widget option.

Parameters:

NameTypeMandatoryDefault value
keyStringYN
valueAnyYN

Return:

TypeDescription
VoidThis method does not return a value.

Example:

s_widget.setOptionValue
s_widget.setOptionValue('label', 'Name');

s_widget.showData()


Use the method to display the data of a widget in the console. 

Return:

TypeDescription
Void

This method does not return a value.

Example:

s_widget.showData
s_widget.showData();

SimpleWidgets

s_widgets


Invoke the methods of the s_widgets object within your scripts, when adding a widget to a form or a page for widget interaction.

s_widgets.getFieldValue(widgetInstanceID, key)


Use this method to return the data value of the widget for the key and widget instance ID.

Parameters:

NameTypeMandatoryDefault value
widgetInstanceIDStringYN
keyStringYN

Return:

TypeDescription
AnyThis methd returns the object value.

Example:

s_widgets.getFieldValue
s_widgets.getFieldValue('157555401214600424', 'name');

s_widgets.getForm()


Use this method to return a form object that is placed using the <Form> or <remform> tag.

Parameter:

NameTypeMandatoryDefault value
nameStringYN

Return:

TypeDescription
ObjectThis method returns a SimpleForm object.

Example:

s_widgets.getForm
const builtInForm = s_widgets.getForm('custom');
await builtInForm.save();

s_widgets.getWidgets()


Use this method to return a list of all the IDs of the widgets instances located on the page.

Return:

TypeDescription
ArrayThis method returns a list of all the IDs of the widgets instances located on the page.

Example:

s_widgets.getWidgets
s_widgets.getWidgets();

s_widgets.setFieldValue(widgetInstanceID, key, value)


Use this method to set a value for the key in the widget data, and the widget instance ID.

Parameters:

NameTypeMandatoryDefault value
widgetInstanceIDStringYN
keyStringYN
valueAnyYN

Return:

TypeDescription
VoidThis method does not return a value.

Example:

s_widgets.setFieldValue
s_widgets.setFieldValue('157555401214600424', 'name', 'Alex');

  • No labels