За последние 24 часа нас посетили 23798 программистов и 1715 роботов. Сейчас ищут 1692 программиста ...

Поиск функции в коде фреймворка.

Тема в разделе "JavaScript и AJAX", создана пользователем miv-men, 27 апр 2018.

  1. miv-men

    miv-men Активный пользователь

    С нами с:
    8 дек 2013
    Сообщения:
    36
    Симпатии:
    0
    Здравствуйте, форумчане.

    На сайте wisell.ru под 1с-bitrix имеется кастомизированый модуль корзины.

    При изменении количества товара "на линейку" сумма считается не корректно, сробатывает рекурсия (можно протестировать на сайте).
    upload_2018-4-27_11-35-43.png

    Проблема заключается в поиске функции которая записывает в массив товара количество.
    На клик срабатывает следующий скрипт:
    Код (Javascript):
    1. $(".count_down, .count_up", self).on("mousedown", function () {
    2.  
    3.                 var _this = $(this),
    4.                     scrollTimeout,
    5.                     isFirst = true,
    6.                     doScroll = function () {
    7.                         if (_this.hasClass("count_down")) {
    8.                             opt.count--;
    9.                         } else if (_this.hasClass("count_up")) {
    10.                             opt.count++;
    11.                         }
    12.                         ;
    13.                         opt.count = opt.validCounter(opt.count);
    14.                         opt.count_input.val(opt.count);
    15.                         opt.count_input.trigger("updateValue", [opt.count]);
    16.                         opt.count_input.trigger("change");
    17.                         //_this.closest(".ui-calculate-row").trigger("rowTotlal");
    18.                         scrollTimeout = setTimeout(doScroll, isFirst ? 300 : 50);
    19.  
    20.                         isFirst = false;
    21.                     };
    22.                 if (self.hasClass("disabled")) {
    23.                     return false;
    24.                 }
    25.                 ;
    26.                 doScroll();
    27.                 _this.on("mouseup mouseout", function () {
    28.                     scrollTimeout && clearTimeout(scrollTimeout);
    29.                     scrollTimeout = null;
    30.                     $(this).off("mouseup mouseout");
    31.                 });
    32.                 return true;
    33.             });
    Подозреваю, что дальше нужно следовать за opt.count_input.trigger("change"); но куда он ведет я не могу понять.

    Можно зайти с другой стороны:
    Код (Text):
    1.  function(){
    2.             $.ajax({
    3.                 url: "/include/ajax/refresh-basket.php",
    4.                 //async: false,
    5.                 dataType: 'json',
    6.             }).done(function(response) {
    7.             ....      ....       .....
    В данной функции ajax выдает нужный мне массив response. Но в файле refresh-basket.php просто подключение компонента, куда идти дальше тоже не понятно.

    Буду рад любым вариантам поиска источника проблемы. Спасибо.