Показать сообщение отдельно
  #1 (permalink)  
Старый 30.09.2016, 23:23
qsc qsc вне форума
Новичок на форуме
Отправить личное сообщение для qsc Посмотреть профиль Найти все сообщения от qsc
 
Регистрация: 30.09.2016
Сообщений: 4

Повторная установка обработчика с новыми данными
Здравствуйте!
Проблема: после установки нового значения select в setHandler передаются не новые, а первоначальные данные. В чем моя ошибка? Зарание благодарю!
=====================================
Эта функция запускается при новом значении select.

function triggerSelect(contentSlider, itemSlctdId){
    console.log('60. Инициализация replaceSliderValRelationInput');
    setTimeout(function(){
      itemSlctd = $(frmSlct).find('.item-selected');
      itemSlctdId = $(itemSlctd).attr('data-id');
      var max;
      var baseContentSliderVal;

      console.log('parseInt(itemSlctdId) ', parseInt(itemSlctdId));
      switch(parseInt(itemSlctdId)){
        case 1: max = 34; baseContentSliderVal = 0;  break;
        case 2: max = 10; baseContentSliderVal = 34; break;
        case 3: max = 22; baseContentSliderVal = 0;  break;
        case 4: max = 5;  baseContentSliderVal = 22; break;
        case 5: max = 2;  baseContentSliderVal = 27; break;
        case 6: max = 3;  baseContentSliderVal = 29; break;
        case 7: max = 2;  baseContentSliderVal = 32; break;
        case 8: max = 10; baseContentSliderVal = 34; break;
        default: console.log('Error!!!'); return 1; 
      }
      console.log('61.1 max', max, 'baseContentSliderVal', baseContentSliderVal);
      replaceSliderValRelationInput(contentSlider, max, baseContentSliderVal);
    }, 0);
  };


Когда фокус попадает или снимается с input text, работает эта функция:
var replaceSliderValRelationInput = function(contentSlider, max, baseContentSliderVal) {
    console.log('38. Замена значений слайдера и зависимых от него по вводу номера в input');
    // Код...

    console.log('61.2 max', max, 'baseContentSliderVal', baseContentSliderVal);
    $(contentSlider).focusin({max: max, baseContentSliderVal: baseContentSliderVal},function(eventObject){
      console.log('61.3 max', eventObject.data.max, 'baseContentSliderVal', eventObject.data.baseContentSliderVal);
      setHandler(this);
    }).focusout(function(){
      // stateMashine(2, this);
      removeHandler(this); 
    });
  };
Ответить с цитированием