Как передать параметр в модальное окно?
Добрый день
Подскажите пожалуйста хочу на сайте реализовать вместо купить, купить в 1 клик будет открываться модальное окно с формой имя, телефон на сайте идет цикл с товарами, напр. 30шт на странице шаблон формирования самого блока внутри цикла <div> <div class="pr-name"><? echo = $name; ?></div> <div class="pr-img"><? echo = $img; ?></div> <div class="pr-price"><? echo = $price; ?></div> <a class="button" id="modal">Купить в 1 клик</a> </div> в нем переменными выводятся название, картинка, цена как на js сделать, что бы нажимая напр. на 3й или 10й товар на кнопку купить в 1 клик, в input type="hidden", в модальном окне подставилось значение именно этого товара? Сейчас так, подставляется значение 1го товара, на какой не нажми модальное окно <div id="#modal"> <form> <input type="hidden" name="<? echo = $name; ?>"/> <input type="text" name="Имя"/> <input type="text" name="Телефон"/> </form> </div> Спасибо |
andrey8501,
<!DOCTYPE html> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <script> addEventListener('click', ({target}) => { if(target.closest('.button')) { const parent = target.closest('.item'), div = parent.querySelector('.pr-name'), text = div.textContent; //document.querySelector('#modal [type="hidden"]').value = text; document.querySelector('#modal [name="article"]').value = text; } }) </script> </head> <body> <div class="item"> <div class="pr-name">товар 1</div> <div class="pr-img"><? echo = $img; ?></div> <div class="pr-price"><? echo = $price; ?></div> <button class="button" type="button" >Купить в 1 клик</button> </div> <div class="item"> <div class="pr-name">товар 2</div> <div class="pr-img"><? echo = $img; ?></div> <div class="pr-price"><? echo = $price; ?></div> <button class="button" type="button" >Купить в 1 клик</button> </div> <div class="item"> <div class="pr-name">товар 3</div> <div class="pr-img"><? echo = $img; ?></div> <div class="pr-price"><? echo = $price; ?></div> <button class="button" type="button" >Купить в 1 клик</button> </div> <div id="modal"> <form> <input type="text" name="article"/> <input type="text" name="Имя"/> <input type="text" name="Телефон"/> </form> </div> </body> </html> |
andrey8501,
id это уникальный номер!!! |
Благодарю
что то у меня оно с модальным окном никак не хочет работать https://codepen.io/natojezlo/pen/zYYveGB |
Спасибо. разобрался
|
andrey8501,
для примера я добавил поле [name="article"] либо уберите строку 14, либо добавьте это поле. для вас строка 13, раскомментируйте эту строку. |
Спасибо большое
|
Часовой пояс GMT +3, время: 19:28. |