Как правильно передать данные по data-target?
Здравствуйте!
Хочу передать данные в кнопку по data-target и все работает, но если кнопки имеют одинаковый ID то данные передадуться только в одну кнопку. А как передавать независимо от дублей, не понимаю и не пойму)) Подскажите пожалуйста, как решить... $(options).each(function() { //console.log($(this).parents('.form-group').find('label')); str_opts += $(this).parents('.form-group').find('label').eq(0).text().trim(); str_opts += ": "; str_opts += $(this).parent('label').text().trim(); str_opts += "<br/>"; // console.log(str_opts); var pre = $(this).data('prefix'); var price = parseFloat($(this).data('price')); if (pre.length != 0 && isNaN(price) == false) { switch (pre) { case '-': total -= price; break; case '+': total += price; break; case '=': total = price; break; case '*': total *= price; break; case '/': total /= price; break; case 'u': total = total + (($total * price) / 100); break; case 'd': total = total - ((total * price) / 100); break; default: break; } } }); $("button[data-target='#" + btn_id + "'").html(str_opts); console.log(str_opts); |
Alexprom,
для однотипных элементов используют class, а не id. и тогда достаточно указать индекс нужного элемента, без всяких data-target |
Цитата:
$("div[class='" + btn_id + "'").html(str_opts); Если да, то так не работает( |
Alexprom,
$("div.class").eq(btn_index).html(str_opts); |
Цитата:
<div class="btn_index-{{ modal_id }}"></div> $("div.class").eq(" + btn_index + ").html(str_opts); Все равно не работает.. |
Цитата:
<!DOCTYPE html> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <style type="text/css"> .red { background-color: #FF0000; } </style> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script> <script> $(function() { const btn = $('div.btn'), test = $('button.test'); test.on('click', function() { const index = test.index(this); btn.eq(index).toggleClass('red'); }) }); </script> </head> <body> <button class="test">01 click me</button> <button class="test">02 click me</button> <button class="test">03 click me</button> <button class="test">04 click me</button> <button class="test">05 click me</button> <div class="btn">1</div> <div class="btn">2</div> <div class="btn">3</div> <div class="btn">4</div> <div class="btn">5</div> </body> </html> |
Цитата:
или какой? Я скину все что нужно |
Alexprom,
не могу помочь, проблема слабо локализована, всё что мог, код выше. |
Цитата:
На ваш код выше я смотрел, немного разобрался, но как прикрутить тот ID что идет в data-target тупо не знаю. У меня получилось только присвоить класс если выбраны нужные опции через метод change и все. Вместо присвоения класс, я поставил .html(str_opts) и все получилось но не совсем)) каждому диву btn я присвоил одинаковые параметры. А они должны исходить с + btn_id + {% if (options) %} <div class="dm-com-vd-button-1"><button type="button" class="btn btn-primary open-options" data-toggle="modal" data-target="#sets-popup-{{ modal_id }}">{{ text_sets_options }}</button></div> {% endif %} И тут я засыпался... |
Alexprom,
в вашем коде я не разобрался, но двух одинаковых id на одной странице не должно быть. это всё, что на данный момент, я могу вам сказать. |
Часовой пояс GMT +3, время: 14:43. |