2011-02-07 21 views

Respuesta

2

Pruebe closest que busca el ancestro más cercano que coincida con el selector. p.ej.

$(this).closest('table').find('selector') 

Editar: Agregado encontrar() al final

+2

'prev' no levanta la vista, esto no es realmente lo mismo. – Kobi

+0

Mi código original era: $ ('# tableid tr: last'). Prev(). Prev(). Prev(). Find ("img"). Click (función() {... pero $ (' #tableid tr: last '). closest ("img"). click (función() {no funciona :( – bubulina

5

Usted puede hacer prevAll() con un selector.

$('div').prevAll('a:last') 
21

Puede utilizar .prevAll, combinado con eq o :eq, ya prevAll devuelve un conjunto de elemento en el orden inverso empezando por el elemento que está más cerca del elemento de corriente siendo [0], el equivalente al .prev().prev().prev() sería .prevAll().eq(2) o .prevAll(':eq(2)').

Ver esta demostración sencilla: http://www.jsfiddle.net/QZYHN/

+0

+1 para comprensión. – alex

+0

También hay [.prevUntil (selector)] (https: // api. jquery.com/prevUntil/). – Alvaro

-1

echar un vistazo a nth-child en jQuery, podría ser de ayuda ...

Cuestiones relacionadas