@joe1989

Как прописать в onclick заданное значение для input в форме обраной связи?

Добрый день, помогите чайнику!)
Ситуация такая. На одностраничнике имеется каталог из 20 товаров. У каждого товара есть кнопка купить, прин ажатии которой выводится одно общее модальное окно с формой обратной связи. Появилась необходимость сделать так, чтобы при отправке формы у нас так же отправлялось и название товара. Хотелось бы отделаться малой кровью и не перелопачивать функцию формы обратной связи.
Есть ли возможность прописать значению onckick, которое у нас выводит модальное окно какую то переменную, чтобы при нажатии у нас вписывалось необходимое название в input формы обратной связи?
  • Вопрос задан
  • 371 просмотр
Решения вопроса 1
@sunrails
https://jsfiddle.net/d7rs49no/2/
<div class="product" data-id="123">
    <!-- Инфо о продукте -->  
    <button class="action-buy">Buy</button>
</div>
    
<form action="#">
    <!-- Инпуты -->
    <div class="visual"></div>
    <input type="hidden" name="product-id" value="" />
</form>

(function($){
    $(document).ready(function() {
        var form = $('form');
        $('.product').each(function() {
        	var product = $(this);
            product.find('.action-buy').on('click', function() {
            	form.find('.visual').text(product.data('id'));
                form.find('input[name=product-id]').val(product.data('id'));
            })
        });
    });
})(jQuery);
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
@joe1989 Автор вопроса
Спасибо добрый человек!)
Ответ написан
Комментировать
coderisimo
@coderisimo Куратор тега JavaScript
Может, я не так понял суть ? Но имхо все гораздо проще

(function($){
    $(document).ready(function() {
         $('body').on('click', '.action-buy', function () {
             $('product-id').val($(this).parent().attr("data-id"));
		 });
    });
})(jQuery);
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы