Добрый вечер, может название темы немного не соответствует, но честно говоря не знаю как правильно назвать.
Суть проблемы, есть карточка товара с ценой товара, есть опции, радио и чекбоксы, с дополнительными плюшками, при выборе опции скриптом подтягивается стоимость опции в основную цену, к примеру товар стоит 1000, в опции - чехол - 100 р. при выборе, общая цена станет 1100 р.
но если опций много, то соответственно получается колбаса, поэтому сделано, что опции вынесены в модальное окно, а в карточке прописана одна скрытая радиокнопка,
<input type="radio" id="fc2_pr" name="fc2_pr" value="1" data-prefix="+" data-price=""/>
при выборе опции в окне обновляется информация и сумма передается в data-price="", в коде js прописал, что бы кнопка становилась активной и имитация клика, функция живой цены recalculateprice(), код прописанный в js модального окна
success: function(html) {
$('#fc2-modal .product_info').replaceWith(html);
$('#fc2_pr').prop('checked', true).click();
$('input[type="radio"]').trigger('change', function() { recalculateprice(); });
},
то есть при выборе опции по ajax из модального окна данные о выборе опций передаются на бек, там подсчитывается сумма опций возвращаются в $('#fc2-modal .product_info').replaceWith(html);
через файл модального окна передаю сумму
var fc2_price = $('#fc2_pr').attr('data-price');
$('#fc2_pr').attr('data-price', '<?php echo $price; ?>');
в data-price, включаю радио кнопку имитирую клик, передаю событие в recalculateprice(); для обсчета и формирования общей цены. Проблема в том, что подсчет живой цены срабатывает только один раз, если к примеру в окне выбрать чехол - 100 р. то сработает, если потом его удалить, то перерасчет не срабатывает, так же если выбрать еще какуе то опцию, то перерасчет не срабатывает, если перезагрузить страницу и открыть окно, то любое действие в нем сработает, один раз и все.
Надеюсь объяснил понятно проблему, конечно можно прикрутить костыль что бы при закрытие окна перезагружалась карточка и тогда все сработает, но хотелось бы по человечески что бы работало. Готов рассмотреть предложения по срокам и стоимости. Спасибо.