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

Compare with Current View Page History

« Previous Version 31 Current »

Данные классы описывают методы настройки структуры и функциональности виджетов:

  • Используйте методы объекта s_widget класса SimpleWidget для добавления необходимой функциональности. Объект доступен при инициализации виджета.
  • Используйте методы объекта s_widgets класса SimpleWidgets для добавления необходимой функциональности. Объект инициализируется при добавлении виджета на форму или на страницу портала.
  • Для создания пользовательских методов используйте s_widget_custom.

    Эти методы могут быть использованы только на стороне клиента.

SimpleWidget

s_widget


Используйте глобальный объект s_widget для того, чтобы выполнить пользовательскую настройку текущего виджета.

Для того чтобы вручную вызвать метод в консоли, передайте ID экземпляра виджета в первом параметре. Например, чтобы вызвать метод:

s_widget.getFieldValue(key); 

используйте следующий способ его вызова:

s_widget.getFieldValue(widgetId, key);

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


Используйте метод для добавления дочерний шаблон (template) к существующему по его ID с одним из следующих типов: inner, before, after.

Параметры:

НазваниеТипОбязательныйЗначение по умолчанию
idStringДаНет
templateStringДаНет
scriptString

Нет

Для настройки параметра type этот параметр является обязательным. Если параметр script не используется, используйте (''), как показано в примере ниже.

Нет
typeStringНет

inner

Возможные варианты: inner, before, after.

Возвращаемое значение:

ТипОписание
VoidМетод не возвращает значение.

Пример:

Шаблон
<div id="steps"></div>
Клиентский скрипт
s_widget.addTemplate('steps', '<div class="main">', '', 'inner');

s_widget.getElements()


Используйте метод, чтобы вернуть массив элементов структуры виджета.

Возвращаемое значение:

ТипОписание
Array of HTML elementsМетод возвращает массив элементов структуры виджета.

Пример:

s_widget.getElements()
s_widget.getElements();

s_widget.getFieldValue(key)


Используйте этот метод для получения значения данных виджета, определенных ключом (key).

Параметр:

НазваниеТипОбязательныйЗначение по умолчанию
keyStringДаНет

Возвращаемое значение:

ТипОписание
AnyМетод возвращает значение поля, заданного ключом (key).

Пример:

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

s_widget.getId()


Используйте метод для возращения ID экземпляра виджета.

Возвращаемое значение:

ТипОписание
StringМетод возвращает ID экземпляра виджета.

Пример:

s_widget.getId
s_widget.getId();

s_widget.getOptionValue(key)


Используйте метод для получения значения value, заданного в опции ключа (key).

Параметр:

НазваниеТипОбязательныйЗначение по умолчанию
keyStringДаНет

Возвращаемое значение:

ТипОписание
AnyМетод возвращает значение опции виджета, заданной ключом (key).

Пример:

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

s_widget.removeTemplate(id)


Используйте метод, чтобы удалить все дочерние узлы и содержимое указанного элемента. Сам элемент и его атрибуты при этом сохраняются.

Параметр:

НазваниеТипОбязательныйЗначение по умолчанию
idStringДаНет

Возвращаемое значение:

ТипОписание
VoidМетод не возвращает значение.

Пример:

Шаблон
<div id="element1">
  Убрать
</div>
<button buttonType="approve" event-click="window.s_widget_custom.remove();">
  Добавить
</button>
CSS
#element1 {
  background-color: yellow;
  height: 20px;
}
Клиентский скрипт
;
(() => {
    window.s_widget_custom = window.s_widget_custom || {};
    window.s_widget_custom.remove = function () {
        s_widget.removeTemplate('element1');
    } 
})();

s_widget.setFieldValue(key, value)


Используйте этот метод, чтобы задать значение (value) для ключа (key).

Если задаваемое значение равно null, например, s_widget.setFieldValue ('subject', null), заданное поле будет очищено. 

Параметры:

НазваниеТипОбязательныйЗначение по умолчанию
keyStringДаНет
valueAnyДаНет

Возвращаемое значение:

ТипОписание
VoidМетод не возвращает значение.

Пример:

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()


Используйте метод, чтобы перенести данные на сервер, где выполняется серверный скрипт виджета, в результате чего обновляются его данные.

Возвращаемое значение:

ТипОписание
ObjectМетод возвращает объект Promise, содержащий ответ сервера

Пример:

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)


Используйте этот метод, чтобы задать значение (value) для ключа (key) опций виджета.

НазваниеТипОбязательныйЗначение по умолчанию
keyStringДаНет
valueAnyДаНет

Возвращаемое значение:

ТипОписание
VoidМетод не возвращает значение.

Пример:

s_widget.setOptionValue
s_widget.setOptionValue('label', 'Наименование');

s_widget.showData()


Используйте этот метод для отображения данных виджета в консоли.

Возвращаемое значение:

ТипОписание
Void

Метод не возвращает значение.

Пример:

s_widget.showData
s_widget.showData();

SimpleWidgets

s_widgets


Вызывайте методы у глобального объекта s_widgets в своих скриптах при добавлении виджета на форму или страницу для взаимодействия с виджетом.

s_widgets.getFieldValue(widgetInstanceID, key)


Метод возвращает значение из данных виджета для ключа (key) и ID экземпляра виджета (widgetinstanceID).

Параметры:

НазваниеТипОбязательныйЗначение по умолчанию
widgetInstanceIDStringДаНет
keyStringДаНет

Возвращаемое значение:

ТипОписание
AnyМетод возвращает значение объекта.

Пример:

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

s_widgets.getForm()


Метод возвращает объект формы, размещенный при помощи тега <Form> или <remform>.

Параметр:

НазваниеТипОбязательныйЗначение по умолчанию
nameStringДаНет

Возвращаемое значение:

ТипОписание
ObjectМетод возвращает объект SimpleForm.

Пример:

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

s_widgets.getWidgets()


Этот метод возвращает список ID всех экземпляров виджетов на странице.

Возвращаемое значение:

ТипОписание
ArrayМетод возвращает список ID всех экземпляров виджетов на странице.

Пример:

s_widgets.getWidgets
s_widgets.getWidgets();

s_widgets.setFieldValue(widgetInstanceID, key, value)


Используйте метод, чтобы задать значение (value) для ключа (key) в данных виджета и ID экземпляра виджета (widgetinstanceID).

Параметры:

НазваниеТипОбязательныйЗначение по умолчанию
widgetInstanceIDStringДаНет
keyStringДаНет
valueAnyДаНет

Возвращаемое значение:

ТипОписание
VoidМетод не возвращает значение.

Пример:

s_widgets.setFieldValue
s_widgets.setFieldValue('157555401214600424', 'name', 'Александр');

  • No labels