Подтвердить что ты не робот

JQuery найти ближайший элемент соответствия

У меня есть ряд строк со столбцами, и я хочу выбрать значение поля input, которое находится в предыдущем столбце, в поле input (ввод цены), на который я вызываю функцию, когда ключ.

Я пробовал:

quantity = $(this).parent().parent().children().val() ;
quantity = $(this).parent().parent().children().closest('.inputQty', this).val() ;

Но не работает.

Пример DOM:

<div class="row">
    <div class="column"><input class="inputQty" id="quantity0" /></div>
    <div class="column"><input class="someOther" id="Other0" /></div>
    <div class="column">
        <div class="cSelect">
            <select id="currency0"><option>£</option></select>
            <input class="price" id="price0" />
        </div>
    </div>
</div>
4b9b3361

Ответ 1

var otherInput = $(this).closest('.row').find('.inputQty');

Это поднимается до уровня строки, а затем возвращается.

Ответ 2

closest() только ищет родителей, я предполагаю, что вы действительно хотите .find()

$(this).closest('.row').children('.column').find('.inputQty').val();

Ответ 3

Получите родительский элемент .column элемента this, получите его предыдущий брат, затем найдите там любой вход:

$(this).closest(".column").prev().find("input:first").val();

Демо: http://jsfiddle.net/aWhtP/

Ответ 4

Вы можете попробовать:

$(this).closest(".column").prev().find(".inputQty").val();