Задать вопрос
DrunkMaster
@DrunkMaster

Как запустить инициализацию второй раз?

Скрипт упростил до предела, оставил только смысл. Суть в том, что выбирается количество товара, после этого вибирается вариант доставки, если выбран вариант доставки яндекса происходит инициализация виджета initCartWidget, далее если виджет готов (ydwidget.ready) он наполняется всеми параметрами доставки , например 'getCity': 1. Проблема в том, что если изменить количество товара и снова выбрать этот вариант доставки, то повторной инициализации не происходит и ydwidget.initCartWidget вообще не отрабатывает. Все значения остаются старыми. Как заставить его перезапустить наполнение?
$(document).ready(function(){
  $('.mainSelect').change(function(){ // Изменение варианта доставки
    if($(this).val() == "yandex" ){ // Если выбран нужный вариант доставки

      // Инициализация виджета
      ydwidget.initCartWidget({
        'totalItemsQuantity':  function (){ 
          var count = parseFloat($('.CartCountTotal').text());
          return count;
        }
      });
      // Имитируем клик по блоку
      $('#yd_delivery').click();

    } else {
      console.log('выбран не нужный нам вариант');
    }
  })
}) // это конец document.ready

// Здесь внутри initCartWidget объект наполняется нужными параметрами
ydwidget.ready(function(){
  ydwidget.initCartWidget({
    'getCity': 1,
  })
})
  • Вопрос задан
  • 226 просмотров
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы