the tag first child after jquery dom-traversal

tag - Jquery encuentra el elemento coincidente más cercano.



jquery get the next element (4)

Obtenga el .column padre de this elemento, obtenga su hermano anterior, luego encuentre cualquier entrada allí:

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

Demostración: http://jsfiddle.net/aWhtP/

Tengo una serie de filas con columnas y quiero seleccionar el valor de un campo de input que está en una columna anterior al campo de input (entrada de precio) al que estoy llamando una función cuando se suelta una tecla.

Yo he tratado:

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

Pero tampoco trabajo.

Un ejemplo del 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>


Tu podrías intentar:

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


closest() solo busca padres, supongo que lo que realmente quieres es .find()

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


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

Eso sube a un nivel de fila, luego vuelve a bajar a .inputQty .