Прочитайте готовые ответы
С чего начать
Лента Новостей
Задачи и проекты
Мессенджер
Группы
Календарь
Диск
Сайты
Интернет-магазин
Складской учет
Почта
CRM
КЭДО
Маркетинг
Центр продаж
Аналитика
BI Конструктор
Автоматизация
Интеграция 1С и Битрикс24
Сотрудники
Бизнес-процессы
Маркетплейс
Контакт-центр
Телефония
Битрикс24 в коробке
Изменения в статьях (архив)

Поддержка24

Пример работы с кодом CRM-форм

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

Мы уже рассказали о Дизайне CRM-форм и Персонализированных формах. В этой статье рассмотрим, как решить не совсем стандартные задачи при использовании новых форм.

Как разместить одну и ту же форму несколько раз на одной странице?
Скопируйте код формы и разместите там, где нужно.

Можно ли использовать на одной странице CRM-форму и виджет с этой CRM-формой?
Да, можно. Скопируйте код формы и разместите там, где нужно.

Как на одной странице разместить несколько контактных форм?
Скопируйте код формы и разместите там, где нужно.

Как настроить автозаполнение скрытых полей в CRM-форме?
Добавьте скрытое поле в CRM-формы, которые хотите разместить на сайте, и задайте значение. Например, %test%.
Как добавить и настроить скрытое поле в CRM-форме

Укажите в скрипте значение скрытого поля и данные, которые будут в это поле записываться. Например, form.setProperty("test", "567"), где test — значение скрытого поля, 567 — данные для передачи в CRM. Если в форме несколько скрытых полей, добавьте код для каждого.

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

<script>
window.addEventListener('b24:form:init', (event) => {
    let form = event.detail.object;
        form.setProperty('test', '567');
      });
</script>

Чтобы подключить скрипт к конкретной CRM-форме, добавьте в код ее ID. Например, для формы с ID 14 код будет form.identification.id == 14.

<script>
window.addEventListener('b24:form:init', (event) => {
    let form = event.detail.object;
    if (form.identification.id == 14) {
          form.setProperty("test", "567");
    }
});
</script>

Для корректной передачи данных разместите подходящий скрипт на сайте ДО подключения формы.

Как указать значения полей для всех виджетов на странице?
Разместите этот скрипт на странице ДО подключения виджета.

<script>
window.addEventListener('b24:form:init', (event) => {
    let form = event.detail.object;
    form.setValues({
        "name": "Андрей",
        "last-name": "Неробей",
        "email": "andrey@example.ru",
        "phone": "+79216011111"
    });
});
</script>