¿Cómo verifico si no hay una clase? Por ejemplo, sé cómo verificar si tiene la clase "prueba", pero ¿cómo verifico si no tiene la clase "prueba"?
if($(this).hasClass("test")){
}
jquery
jquery-selectors
usuario1005793
fuente
fuente
if($(this).is(":not(.test)"))
> :)La respuesta de sdleihssirhc es, por supuesto, la correcta para el caso en la pregunta, pero solo como referencia si necesita seleccionar elementos que no tienen una clase determinada, puede usar el selector no :
fuente
Seleccione el elemento (o grupo de elementos) que tenga la clase "abc", que no tenga la clase "xyz":
Al seleccionar CSS normal puede usar
.abc:not(.xyz)
.fuente
usa el método .not () y busca un atributo:
Compruébelo aquí: http://jsfiddle.net/AWb79/
fuente
Puedes probar esto:
fuente
Hay escenarios más complejos donde esto no funciona. ¿Qué sucede si desea seleccionar un elemento con clase A que no contiene elementos con clase B. Termina necesitando algo más como:
Si el elemento padre no contiene cierto elemento hijo; jQuery
fuente
Después de leer esto 6 años más tarde, pensé que también podría hacerlo, también en la línea TIMTOWTDI ...: D, con la esperanza de que no sea una "etiqueta JS" incorrecta.
Normalmente configuro una var con la condición y luego me refiero a ella más adelante ... es decir;
Aunque debo mencionar que hago esto porque uso principalmente el operador ternario condicional y quiero un código limpio. Entonces, en este caso, todo lo que tendría es esto:
...en lugar de esto:
fuente
No sé por qué, pero la respuesta aceptada no funcionó para mí. En cambio, esto funcionó:
fuente