Note |
---|
s_widget это объект класса SimpleWidget, который становится доступен при инициализации виджета. s_widgets это объект класса SimpleWidgets, который инициализируется при добавлении виджета на форму или на страницу портала. |
API виджетов описывает методы настройки структуры и функциональности виджетов:
- Используйте методы объектов s_widget и s_widgets в клиентских скриптах виджетов для добавления необходимой функциональности.
- Для создания пользовательских методов используйте s_widget_custom.
Info |
---|
Эти методы могут быть использованы только на стороне клиента. |
Используйте нижеописанные методы для того, чтобы выполнить пользовательскую настройку текущего виджета.
Info |
---|
Для того чтобы вручную вызвать метод в консоли, передайте ID экземпляра виджета в первом параметре. Например, чтобы вызвать метод: Code Block |
---|
| s_widget.getFieldValue(key); |
используйте следующий метод: Code Block |
---|
| s_widget.getFieldValue(widgetId, key); |
|
Этот метод добавляет дочерний шаблон к существующему по его ID с одним из следующих типов: inner, before, after.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|
id | String | Да | Нет |
template | String | Да | Нет |
script | String | Нет Note |
---|
Для настройки параметра type этот параметр является обязательным. Если параметр script не используется, используйте (''), как показано в примере ниже. |
| Нет |
type | String (возможные варианты: inner, before, after) | ДаНет | inner Tooltip |
---|
onlyIcon | true |
---|
appendIcon | info-filled |
---|
iconColor | blue |
---|
| Если не указано. |
|
Возвращаемое значение:
Тип | Описание |
---|
Void | Данный метод не возвращает значение. |
Пример:
Code Block |
---|
language | xml |
---|
title | Add to a template field:Добавить к полю шаблона |
---|
|
<div id="steps"></div> |
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | Add to a client scriptДобавить к клиентскому скрипту |
---|
|
s_widget.addTemplate('steps', '<div class="main">', '', 'inner'); |
Данный метод возвращает элемент массив элементов структуры виджета structure.
Возвращаемое значение:
Тип | Описание |
---|
array<elements> | Элементы структуры виджета, собранные в массив. |
Пример:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | s_widget.getElements() |
---|
linenumbers | true |
---|
|
window.s_widget.getElements(); |
Используйте этот метод для получения значения поля виджета, определенного опцией ключом key.
Параметр:
Название | Тип | Обязательный | Значение по умолчанию |
---|
key | String | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|
mixedAny | Значение поля, определенное указанным определенного указанным ключом. |
Пример:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | s_widget.getFieldValue |
---|
linenumbers | true |
---|
|
s_widget.getFieldValue('element'); |
Данный метод возвращает объект формы, размещенный при помощи тэга <Form> или <remform>.
Параметр:
Название | Тип | Обязательный | Значение по умолчанию |
---|
name | String | Да | Нет |
Возвращаемое значение:Тип | Описание |
---|
Object | Метод возвращает объект SimpleForm. |
Пример:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | .getOptionValueconst builtInForm = s_widgets.getForm('custom');
await builtInFormsave();
Данный метод возвращает ID экземпляра виджета как значение строкив виде строки.
Возвращаемое значение:
Тип | Описание |
---|
String | Метод возвращает ID экземпляра виджета. |
Пример:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | s_widget.getId |
---|
linenumbers | true |
---|
|
s_widget.getId(); |
Используйте данный метод для возврата опции виджета получения значения value, определенной опцией заданного в опции key.
Параметр:
Название | Тип | Обязательный | Значение по умолчанию |
---|
key | String | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|
mixedAny | Значение опций опции виджета определено , определёной ключом. |
Пример:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | s_widget.getOptionValue |
---|
|
s_widget.getOptionValue('label'); |
Используйте данный метод, чтобы удалить все дочерние узлы и содержимое указанных элементов. Сами элементы и аттрибуты при этом сохраняются.
Параметр:
Название | Тип | Обязательный | Значение по умолчанию |
---|
id | String | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|
Void | Данный метод не возвращает значение. |
Пример:
Code Block |
---|
language | xml |
---|
theme | Eclipse |
---|
title | Add this to the Template field |
---|
linenumbers | true |
---|
|
<div id="element1">
Remove me
</div>
<button buttonType="approve" event-click="window.s_widget_custom.remove();">
Click me
</button> |
Code Block |
---|
language | css |
---|
theme | Eclipse |
---|
title | Add this to the CSS field |
---|
linenumbers | true |
---|
|
#element1 {
background-color: yellow;
height: 20px;
} |
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | Add this to the Client Script field |
---|
linenumbers | true |
---|
|
;
(() => {
window.s_widget_custom = window.s_widget_custom || {};
window.s_widget_custom.remove = function () {
s_widget.removeTemplate('element1');
}
})(); |
Используйте этот метод, чтобы задать значение (value) при помощи ключа (key).
Info |
---|
Если значение параметра равно 'null', например, s_widget.setFieldValue ('subject', null) , заданное поле будет очищено. |
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|
key | String | Да | Нет |
value | mixed | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|
Void | Данный метод не возвращает значение. |
Пример:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | s_widget.setFieldValue |
---|
linenumbers | true |
---|
|
;
(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 | Метод возвращает промис, содержащий определенные данные. |
Пример:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | s_widget.serverUpdate |
---|
linenumbers | true |
---|
|
;
(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 | Да | Нет |
value | mixed | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|
Void | Данный метод не возвращает значение. |
Пример:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | s_widget.setOptionValue |
---|
|
s_widget.setOptionValue('label', 'name'); |
Используйте этот метод для отображения данных поля виджета в консоли.
Возвращаемое значение:
Тип | Описание |
---|
Void | Данный метод не возвращает значение. |
Пример:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | s_widget.showData |
---|
|
s_widget.showData(); |
Вызывайте метод s_widgets в своих скриптах при добавлении виджета на форму или страницу для взаимодействия с виджетом.
Данный метод возвращает значение объекта при помощи ключа (key) и ID экземпляра виджета (widget instance ID).
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|
widgetInstanceID | String (значение sys_id) | Да | Нет |
key | Integer | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|
mixed | Возвращает значение объекта. |
Пример:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | s_widgets.getFieldValue |
---|
|
s_widgets.getFieldValue('157555401214600424', 'name'); |
Данный метод возвращает объект формы, размещенный при помощи тэга <form> или <remform>.
Параметр:
Название | Тип | Обязательный | Значение по умолчанию |
---|
name | String | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|
Object | Метод возвращает объект SimpleForm. |
Пример:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | s_widgets.getForm |
---|
linenumbers | true |
---|
|
const builtInForm = s_widgets.getForm('custom');
await builtInForm.save(); |
Этот метод возвращает список ID всех экземпляров виджетов на странице.
Возвращаемое значение:
Тип | Описание |
---|
List<String> | Список ID объектов типа строка |
Пример:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | s_widgets.getWidgets |
---|
|
s_widgets.getWidgets(); |
Используйте данный метод для настройки значения (value) поля при помощи ключа(key)и ID экземпляра виджета (widget instance ID).
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|
widgetInstanceID | String (значение sys_id) | Да | Нет |
key | Integer | Да | Нет |
value | mixed | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|
Void | Метод не возвращает значение. |
Пример:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | s_widgets.setFieldValue |
---|
|
s_widgets.getFieldValue('157555401214600424', 'name', 'Alex'); |
При помощи переменной window.s_widget_custom можно изменять настройки пользовательских методов для виджетов внутри клиентского скрипта.
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | Ex. |
---|
linenumbers | true |
---|
|
window.s_widget_custom.updateFullname = function() {
//
} |