Клонирование html

AG
На сайте с 13.10.2014
Offline
44
1317

Доброго времени суток!

Подскажите пожалуйста куда копать, стоимость товара добавляется в корзину только для первого товара.

Вроде бы надо смотреть в сторону цикла, но, не уверен и поэтому решил спросить у тех кто знает наверняка.

https://jsfiddle.net/zL280LzL/

webiumpro
На сайте с 20.03.2017
Offline
39
#1

На странице не должно быть несколько элементов с одинаковым id. Вы же инпутам для всех товаров присваиваете одинаковые id при добавлении. Замените их на классы или проставьте уникальные id. А вообще, ваш скрипт можно написать раза в 2 короче, намудрили вы там.

Копирование лендингов. Разработка на фреймворке сервисов. Создание сайтов (/ru/forum/994418)
AG
На сайте с 13.10.2014
Offline
44
#2

Заменил на классы, но толку от этого никакого

https://jsfiddle.net/rpsh0zw4/

Они все равно добавляются одинаковые.

Подкиньте идеи как присвоить инпутам разные классы, или может еще как то по другому можно...

webiumpro
На сайте с 20.03.2017
Offline
39
#3


$('.tAdd').click(function () {
var strPrice = $(this).parent().find('.tPrice').text(),
price = Number(strPrice.substring(0, strPrice.length - 1)),
name = '<span class="tName">' + $(this).parent().find('.tName').text() + '</span>',
priceBlock = '<span class="price-block"><input name="num1[]" class="num1" value="1" /><span> = </span><input type="hidden" name="num2[]" class="num2" value="' + price + '" /><input name="sum[]" class="sum" value="' + price + '" readonly /><span> р.</span></span>',
del = '<a href="#" class="tDel">Удалить</a>';
$('.kor').append('<div class="korTBlock">' + name + priceBlock + del + '</div>')
});

$(document).on('change', '.num1', function () {
var num1 = $(this).val(),
num2 = $(this).parent().find('.num2').val();
$(this).parent().find('.sum').val(num1 * num2);
});

$(document).on('click', '.tDel', function () {
$(this).parent().remove();
});

Вот так, например, можно. Код полностью рабочий, проверил. Можете целиком брать и пользоваться

AG
На сайте с 13.10.2014
Offline
44
#4

webiumpro, и правда почти в два раза короче код. Класс!🍻

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий