Esto es probablemente bastante simple.
Quiero seleccionar todos los elementos de una clase dada thisClass
, excepto donde está la identificación thisId
.
es decir, algo equivalente a (donde - / menos implica eliminar):
$(".thisClass"-"#thisId").doAction();
jquery
jquery-selectors
Ankur
fuente
fuente
All selectors are accepted inside :not(), for example: :not(div a) and :not(div,a)
así que solo use los selectores delimitados por comas para hacer múltiples(".thisclass:not(#thisid,#thatid)").doAction();
O tome el método .not ()
https://api.jquery.com/not/
fuente
.not()
No es un selector. Es una funcion. Pero también hay un:not()
selector como otras menciones de respuesta.Puede usar la función .not como en los siguientes ejemplos para eliminar elementos que tengan una identificación exacta, una identificación que contenga una palabra específica, una identificación que comience con una palabra, etc ... consulte http://www.w3schools.com/jquery/jquery_ref_selectors .asp para obtener más información sobre los selectores jQuery.
Ignorar por ID exacto:
Ignorar las identificaciones que contienen la palabra "Id"
Ignorar las identificaciones que comienzan con "mi"
fuente
Solo agregaré una respuesta JS (ES6), en caso de que alguien la esté buscando:
Actualización (esto puede haber sido posible cuando publiqué la respuesta original, pero agregando esto ahora de todos modos):
Esto elimina el
Array.from
uso.document.querySelectorAll
devuelve aNodeList
.Lea aquí para saber más sobre cómo iterar sobre él (y otras cosas): https://developer.mozilla.org/en-US/docs/Web/API/NodeList
fuente
$(".thisClass[id!='thisId']").doAction();
Documentación sobre selectores: http://api.jquery.com/category/selectors/
fuente
Usar el
.not()
método con la selección de un elemento completo también es una opción.De esta manera, podría ser útil si desea realizar otra acción con ese elemento directamente.
fuente