//выбираем нужные элементы
var color = document.querySelectorAll('.color');
//перебираем все найденные элементы и ставим галочку при клике
$(function(){
$(".color").on("click", function(){
this.classList.toggle('checked');
// Это пробовал задать значение переменной и прибавить в итоговую цену, но не получается
var colorPrice = this.dataset.price;
});
});
// для упрощения задачи привел пример как берется цена из доп.атрибута
var black = document.getElementById('black').dataset.price;
var blue = document.getElementById('blue').dataset.price;
var green = document.getElementById('green').dataset.price;
var red = document.getElementById('red').dataset.price;
.colors
вызывайте функцию пересчёта:$('.colors').on('click', '.color', function() {
$(this).toggleClass('checked');
calculate();
});
.colors .checked
и суммирование их data-price
:total += $('.colors .checked', this)
.get()
.reduce((acc, n) => acc + +n.dataset.price, 0);