2009-06-26 38 views
7

Esto puede sonar como una pregunta simple, pero parece que no puedo encontrar una respuesta en google, probablemente porque el término de búsqueda traerá bastante irrelevancia.jQuery selector Y operador

Me gustaría que un selector jQuery seleccione todas las filas de tablas impares, que no están en <thead> y aplique una clase css a todas ellas.

table.cp-ss-grid tr:odd 

El selector anterior nos traerá todas las filas impares en la tabla correctamente, pero incluirá las filas THEAD (en IE)

¿Cómo I en el selector de hacer una y, es decir, algo así como:

table.cp-ss-grid tr:odd:not(thead) 

lo anterior no funciona y todavía lleva de nuevo las filas THEAD

¿Alguna idea?

Respuesta

6

Por qué no hacer:

$('table.cp-ss-grid > tbody > tr:odd'); 

Para seleccionar explícitamente el cuerpo filas? Todos los navegadores agregarán un tbody para ti si no tienes uno.

+3

NB: Los navegadores agregarán tbody para HTML pero no para XHTML. (XHTML sirvió como conteo de texto/html como HTML - una razón más por la que es una mala idea hacerlo) – Quentin

0

si utiliza ª a la cabeza y td a otras filas, se puede comprobar que el niño tiene de td,

.children('td') 
0

table.cp-ss-grid tr:odd seleccionar todos los filaB extraña que no incluirá la cabecera

si desea especificar un color de la cabecera utilizar :nth-child(n)

11

Un selector AND para jQuery sería por ejemplo: .classA.classB

Esto seleccionaría elementos que tienen clase A y clase B.