Respuestas:
Use el selector: no .
$(".thisclass:not(#thisid)").doAction();
Si tiene múltiples identificadores o selectores, simplemente use el delimitador de coma, además:
(".thisclass:not(#thisid,#thatid)").doAction();
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();
.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:
$(".thisClass").not('[id="thisId"]').doAction();
Ignorar las identificaciones que contienen la palabra "Id"
$(".thisClass").not('[id*="Id"]').doAction();
Ignorar las identificaciones que comienzan con "mi"
$(".thisClass").not('[id^="my"]').doAction();
Solo agregaré una respuesta JS (ES6), en caso de que alguien la esté buscando:
Array.from(document.querySelectorAll(".myClass:not(#myId)")).forEach((el,i) => {
doSomething(el);
}
Actualización (esto puede haber sido posible cuando publiqué la respuesta original, pero agregando esto ahora de todos modos):
document.querySelectorAll(".myClass:not(#myId)").forEach((el,i) => {
doSomething(el);
});
Esto elimina el Array.from
uso.
document.querySelectorAll
devuelve a NodeList
.
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
$(".thisClass[id!='thisId']").doAction();
Documentación sobre selectores: http://api.jquery.com/category/selectors/