Necesita que JQuery seleccione una tabla solo si su primera fila tiene más de 1 columna

StackOverflow https://stackoverflow.com/questions/821691

  •  03-07-2019
  •  | 
  •  

Pregunta

Necesito seleccionar y actuar sobre un elemento de tabla con JQuery, pero solo cuando contiene al menos una fila con más de una columna. El siguiente selector funciona, pero solo me pone en parte:

$('#my_table_is:has(tbody tr)').doSomething();

Las variaciones que he probado sin éxito son:

$('#my_table_id:has(tbody > tr > td:eq(1))').doSomething();
$('#my_table_id:has(tbody tr:nth-child(1))').doSomething();
$('#my_table_id:has(td:eq(1))').doSomething();    

¿Qué combinación de selector y filtro hará que esto funcione?

Por cierto, la razón por la que necesito esto es que tablesorter con una lista de clasificación de varias columnas, aparentemente explotará cuando solo hay 1 columna en la salida de la tabla.

¿Fue útil?

Solución

¿qué tal solo un buen cheque ole?

if (1 < $('#tbl thead th').size()) ...

Otros consejos

¿No sería más fácil en realidad arreglar el ordenador de tablas en lugar de piratear ? (Supongo que te refieres a http://tablesorter.com/ ).

Logré hacer esto con el siguiente selector (también para una versión anterior de TableSorter):

#tableID: tiene (tbody > tr > td + td)

La idea es que encontrará la tabla solo si tiene un tbody con un tr que tiene al menos dos hermanos td en it.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top