Данные классы описывают методы настройки структуры и функциональности виджетов:
Для создания пользовательских методов используйте s_widget_custom.
Эти методы могут быть использованы только на стороне клиента. |
Используйте глобальный объект s_widget для того, чтобы выполнить пользовательскую настройку текущего виджета.
Для того чтобы вручную вызвать метод в консоли, передайте ID экземпляра виджета в первом параметре. Например, чтобы вызвать метод:
используйте следующий способ его вызова:
|
Используйте метод для добавления дочернего шаблона (template) к существующему по его id с одним из следующих типов: inner, before, after.
Параметры:
Название | Тип | Обязательный | Описание | Значение по умолчанию | Пример | |
---|---|---|---|---|---|---|
id | String | Да | Укажите id тега div. | Нет | steps | |
template | String | Да | Укажите тело шаблона. | Нет | <div class="main"> | |
script | String | Нет
| Составьте скрипт шаблона. Скрипт запускается один раз после добавления шаблона. | Нет | s_widget.addTemplate("cards", s_widget.getFieldValue("template"), "console.log('Hello world!');", "inner"); | |
type | String | Нет | Укажите тип шаблона. Это определяет, куда добавляется шаблон. Доступные опции:
| inner | before |
Возвращаемое значение:
Тип | Описание |
---|---|
Void | Метод не возвращает значение. |
Пример:
<div id="steps"></div> |
s_widget.addTemplate('steps', '<div class="main">', '', 'inner'); |
Используйте метод, чтобы вернуть массив элементов структуры виджета. Элементы в массиве имеют тот же порядок, что и на странице.
Возвращаемое значение:
Тип | Описание |
---|---|
Array of HTML elements | Метод возвращает массив элементов структуры виджета. |
Пример:
s_widget.getElements(); |
Используйте этот метод для получения значения данных виджета, определенных ключом (key).
Параметр:
Название | Тип | Обязательный | Описание | Значение по умолчанию | Пример |
---|---|---|---|---|---|
key | String | Да | Укажите ключ поля, который должен использоваться для получения значения. | Нет | element |
Возвращаемое значение:
Тип | Описание |
---|---|
Any | Метод возвращает значение поля, заданного ключом (key). |
Пример:
s_widget.getFieldValue('element'); |
Используйте метод для возращения ID экземпляра виджета.
Возвращаемое значение:
Тип | Описание |
---|---|
String | Метод возвращает ID экземпляра виджета. |
Пример:
s_widget.getId(); |
Используйте метод для получения значения value, заданного в опции ключа (key) из Опций схемы виджета.
Параметр:
Название | Тип | Обязательный | Описание | Значение по умолчанию | Пример |
---|---|---|---|---|---|
key | String | Да | Укажите ключ опции из Опций схемы виджета. | Нет | label |
Возвращаемое значение:
Тип | Описание |
---|---|
Any | Метод возвращает значение опции виджета, заданной ключом (key). |
Пример:
s_widget.getOptionValue('label'); |
Используйте метод, чтобы удалить все дочерние узлы и содержимое указанного элемента. Сам элемент и его атрибуты при этом сохраняются.
Параметр:
Название | Тип | Обязательный | Описание | Значение по умолчанию | Пример |
---|---|---|---|---|---|
id | String | Да | Укажите id тега div. | Нет | element1 |
Возвращаемое значение:
Тип | Описание |
---|---|
Void | Метод не возвращает значение. |
Пример:
<div id="element1"> Убрать </div> <button buttonType="approve" event-click="window.s_widget_custom.remove();"> Добавить </button> |
#element1 { background-color: yellow; height: 20px; } |
; (() => { window.s_widget_custom = window.s_widget_custom || {}; window.s_widget_custom.remove = function () { s_widget.removeTemplate('element1'); } })(); |
Используйте этот метод, чтобы задать значение (value) для ключа (key).
Если задаваемое значение равно null, например, |
Параметры:
Название | Тип | Обязательный | Описание | Значение по умолчанию | Пример |
---|---|---|---|---|---|
key | String | Да | Укажите ключ поля, значение которого нужно изменить. | Нет | table_name |
value | Any | Да | Укажите новое значение поля. | Нет | tableName |
Возвращаемое значение:
Тип | Описание |
---|---|
Void | Метод не возвращает значение. |
Пример:
; (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(); })(); |
Используйте метод, чтобы перенести данные на сервер, где выполняется серверный скрипт виджета, в результате чего обновляются его данные.
Возвращаемое значение:
Тип | Описание |
---|---|
Object | Метод возвращает объект Promise, содержащий ответ сервера. |
Пример:
; (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); })(); |
Используйте этот метод, чтобы задать значение (value) для ключа (key) опций виджета.
Название | Тип | Обязательный | Описание | Значение по умолчанию | Пример |
---|---|---|---|---|---|
key | String | Да | Укажите ключ опции виджета из Опций схемы виджета. | Нет | label |
value | Any | Да | Укажите новое значение опции. | Нет | Name |
Возвращаемое значение:
Тип | Описание |
---|---|
Void | Метод не возвращает значение. |
Пример:
s_widget.setOptionValue('label', 'Наименование'); |
Используйте этот метод для отображения данных виджета в консоли.
Возвращаемое значение:
Тип | Описание |
---|---|
Void | Метод не возвращает значение. |
Пример:
s_widget.showData(); |
Вызывайте методы у глобального объекта s_widgets в своих скриптах при добавлении виджета на форму или страницу для взаимодействия с виджетом.
Метод возвращает значение из данных виджета для ключа (key) и ID экземпляра виджета (widgetinstanceID).
Параметры:
Название | Тип | Обязательный | Описание | Значение по умолчанию | Пример |
---|---|---|---|---|---|
widgetInstanceID | String | Да | Укажите ID экземпляра виджета. | Нет | 169598365414458401 |
key | String | Да | Укажите ключ поля, значение которого вы хотите получить. | Нет | name |
Возвращаемое значение:
Тип | Описание |
---|---|
Any | Метод возвращает значение объекта. |
Пример:
s_widgets.getFieldValue('157555401214600424', 'name'); |
Метод возвращает объект формы, размещенный при помощи тега <Form> или <remform>.
Параметр:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
name | String | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|---|
Object | Метод возвращает объект SimpleForm. |
Пример:
const builtInForm = s_widgets.getForm('custom'); await builtInForm.save(); |
Этот метод возвращает список ID всех экземпляров виджетов на странице. ID включаются в ответ в том же порядке, в котором виджеты расположены на странице.
Возвращаемое значение:
Тип | Описание |
---|---|
Array | Метод возвращает список ID всех экземпляров виджетов на странице. |
Пример:
s_widgets.getWidgets(); |
['160767740511016793', '160767742115787725', '160767742915897037', '160767743612372124', '158965632914393037', '158965975317960937', '161062077113210360'] |
Используйте метод, чтобы задать значение (value) для ключа (key) в данных виджета и ID экземпляра виджета (widgetinstanceID).
Параметры:
Название | Тип | Обязательный | Описание | Значение по умолчанию | Пример |
---|---|---|---|---|---|
widgetInstanceID | String | Да | Укажите ID экземпляра виджета. | Нет | 169598365414458401 |
key | String | Да | Укажите ключ поля, значение которого вы хотите задать. | Нет | name |
value | Any | Да | Укажите новое значение поля. | Нет | Alex |
Возвращаемое значение:
Тип | Описание |
---|---|
Void | Метод не возвращает значение. |
Пример:
s_widgets.setFieldValue('157555401214600424', 'name', 'Александр'); |