Considere el siguiente HTML. Si tengo una referencia al elemento JSON botón < >, ¿cómo puedo obtener una referencia a la <tr> elemento exterior en ambos casos¿Hay un selector/método de jQuery para encontrar un elemento principal específico n niveles arriba?
<table id="my-table">
<tr>
<td>
<button>Foo</button>
</td>
<td>
<div>
<button>Bar</button>
</div>
</td>
</tr>
</table>
<script type="text/js">
$('#table button').click(function(){
//$(this).parent().parent() will work for the first row
//$(this).parent().parent().parent() will work for the second row
//is there a selector or some magic json one liner that will climb
//the DOM tree until it hits a TR, or do I have to code this myself
//each time?
//$(this).????
});
</script>
sé que pude caso especial cada condición, pero estoy más interesado "por más profundo que sea, suba al árbol hasta que encuentre la solución de estilo del elemento X". Algo como esto, pero más como jQuery/menos verbosa
var climb = function(node, str_rule){
if($(node).is(str_rule)){
return node;
}
else if($(node).is('body')){
return false;
}
else{
return climb(node.parentNode, str_rule);
}
};
que sé sobre el método de matriz (expr), pero por lo que he visto es que permite filtrar los padres de una sola planta y se suba al árbol hasta a encontrar expr (me encantaría ejemplo de código me demostrando mal)
espero que no mente, agregué un enlace a la documentación. –
¡Absolutamente, gracias! Para eso sirve el permiso "Editar publicaciones de otras personas";) – Seb
Ja, eso es gracioso. Me pregunté por qué Visual jQuery enumeró parent (expr) dos veces; Resulta que espacié totalmente la s al final. –