Как передать .val() по клику в input?

Добрый вечер.
столкнулся с небольшой задачкой.
у меня есть несколько блоков.
<div class="block-info">
            <span class="block-food">Сосиска в тесте</span>
            <button class="block-btn">Заказать</button> 
       </div>

       <div class="block-info">
            <span class="block-food">Сосиска без теста</span>
            <button class="block-btn">Заказать</button> 
       </div>
//один инпут

       <input class="out" type="text">


все блоки и контент внутри них имеют одинаковые класи.

мне нужно сделать так, что бы при нажатии на
<button class="block-btn">Заказать</button>
в
<input class="out" type="text">
подтягивалось значение c тега span с class="block-food" ДАННОГО БЛОКА!!
Сосиска с текстом (заказать).

долго ломал голову, написал вот такую структуру, но она не работает(.
$('.block-info').on('click', '.block-btn' function(){
    var info = $(this).find('.block-food').val();
    $('.out').val(info).html('заказать')
})


знаю что не сильно корректно написано,
я новичок, поэтому буду благодарен за вашу помощь.
  • Вопрос задан
  • 102 просмотра
Решения вопроса 1
lidacriss
@lidacriss
wtf
$('.block-btn').on('click', function(){
	var food = $(this).parent().find('.block-food').text();
  // или так
  // var food = $(this).prev().text();
  $('.out').val(food);
  // или со словом "заказать"
  // $('.out').val(food + ' (заказать)');
});

https://jsfiddle.net/ep4tareh/
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@TheRevan
$('.block-btn').click(function(){
  var info = $(this).closest('.block-info').find('.block-food').text();
  $('.out').val(info);
})
Ответ написан
paulfcdd
@paulfcdd
PHP/Sf/WEB developer
Тебе нужно использовать свойство .parent():

$(document).ready(function() {
$('.block-btn').on('click', function() {
var text = $(this).parent().find('.block-food').text();
$('.out').val(text);
});
});


https://jsfiddle.net/o2gxgz9r/28173/
Ответ написан
Ваш ответ на вопрос

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

Войти через TM ID
Похожие вопросы
15 авг. 2018, в 01:47
30000 руб./за проект
15 авг. 2018, в 01:09
70000 руб./в месяц
14 авг. 2018, в 22:43
350 руб./за проект