Внешние переменные в форме-калькуляторе

Иногда в форме-калькуляторе нужно использовать внешние переменные.

Например, курс рубля к доллару. Мы будем загружать его AJAX-запросом и записывать в переменную rub2usd.

Формула в калькуляторе

В самом калькуляторе в формуле используем код (window.rub2usd || 0.0141126471).

 

Обязательно указывать именно window.rub2usd, а не rub2usd, иначе в коде будет ошибка.

Значение 0.0141126471 является «‎запасным», оно нужно, чтобы формула работала исправно в следующих случаях:

  1. В редакторе, где нет переменной rub2usd.
  1. В публикации, пока настоящий курс не загружен, и переменная еще не создана.
  1. В публикации, на случай если внешняя переменная не будет создана по той или иной причине.

Обновление переменной

В настройках формы нужно указать ID my-form, или любой другой (и в коде поменять), чтобы по нему потом обращаться к форме.

Код обновления переменной:

<script>
// Запрашиваем курс валют к рублю
$.get('https://api.exchangeratesapi.io/latest?base=RUB').then(function (data) {
    // Записываем курс доллара в переменную
    window.rub2usd = data.rates.USD;

    // Вызываем пересчет калькулятора
    cr.api(function (page) {
        page.getComponent('my-form').recalculate();
    });
})
</script>

Рабочий пример можно посмотреть по ссылке

ТЕХНИЧЕСКАЯ ПОДДЕРЖКА

Не можете найти то, что ищите?

Напишите нам. на связи 24/7. Среднее время ожидания ответа: 10-15 минут. Также вы можете вступить в наш Телеграм-чат, где собралось много специалистов и пользователей.

Поддержка Creatium

Агенты ответят через 10 минут

Агенты ответят

Блог, курсы и полезные материалы 

Платформа сайтов любой сложности