Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > конкатенация переменной


Автор: yintar1980 28.2.2017, 17:01
Здравствуйте!
При событии выбора чекбокса я считываю 2 параметра $(this).data('f')  и $(this).data('o'), далее формирую переменную  param
  param = '&' + $(this).data('f') + '=' + $(this).data('o') и подставляю ее в newLocation.На этом этапе все хорошо и все работает.
  но когда я кликаю уже по другому чекбоксу, то в переменной param должны остаться предыдущие данные и добавиться новые, т.е. param + param + param и т.д (надо конкатенировать предыдущую переменную param  с последующей), а у меня в переменной param  остаются  данные полученные при последнем клике (оно и понятно при событии onchange значение переменной param  обнуляется и записывается новое, а мне надо чтобы при каждом выборе чекбокса происходила конкатенация и в переменной param остались старые данные и добавлялись новые).
Подскажите ,пожалуйста, как решить проблему.

Код

$('.someproperty').on('change', function () {

        param = '&' + $(this).data('f') + '=' + $(this).data('o');
        newLocation = 'catalog/{/literal}{$cat->url}?cost={$cost}&page=&sort={$sort}&brand={$brand_url}{literal}' + param;
                                    window.location = newLocation;
   });

Автор: igorold 1.3.2017, 14:59
А так не пробовали? :
Код

param = param + '&' + $(this).data('f') + '=' + $(this).data('o')


Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)