Перейти к основному содержимому
Версия: 1.23.3

API виджетов

Виджет – это небольшое приложение, содержащее серверную и клиентскую логику. Виджет отправляет, получает и обрабатывает события через клиентский и серверный контроллеры. Помимо этого, виджеты обрабатывают и отображают полученные от пользователей данные. Они могут располагаться на любых формах и страницах портала.

Схема обработки данных


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

Серверный скрипт использует объект input для доступа к данным, полученным из клиентского контроллера, и объекту data для обработки данных и их отправки назад.

Клиентский скрипт использует объект data для доступа к данным сервера. После обработки данных клиентским скриптом необходимо вызывать метод s_widget.serverUpdate() для передачи данных в серверный контроллер. При вызове этого метода объект серверного скрипта data автоматически перезаписывает объект data клиентского контроллера.

примечание

Клиентский контроллер использует объект s_widget для вызова методов API виджетов.

Взаимодействия между виджетами


При необходимости взаимодействия между виджетами используйте в клиентском скрипте методы s_widgets:

  • Для получения и изменения данных виджета используйте методы s_widgets.getFieldValue(widgetID, key) и s_widgets.setFieldValue(widgetID, key, value):

    window.s_widgets.getFieldValue('157555401214600424', 'name');
    window.s_widgets.getFieldValue('157555401214600424', 'name', 'Иван');
  • Для получения ID всех виджетов на текущей странице используйте метод s_widgets.getWidgets():

    window.s_widgets.getWidgets();
  • Используйте метод s_widget.getElements() для просмотра составляющих элементов виджета:

    window.s_widget.getElements();

Simple-теги


Узнайте о доступных тегах виджетов и их атрибутах, а также об их использовании в агентском интерфейсе и на портале.

Директивы API


Для оптимизации вашей работы и эффективности виджетов используйте директивы API simple-if, simple-class, simple-show и simple-style.