Answers:
使用:not选择器。
$(".thisclass:not(#thisid)").doAction();
如果您有多个ID或选择器,则只需使用逗号定界符,此外:
(".thisclass:not(#thisid,#thatid)").doAction();
All selectors are accepted inside :not(), for example: :not(div a) and :not(div,a)
因此就使用逗号分隔的选择做多(".thisclass:not(#thisid,#thatid)").doAction();
.not()
不是选择器。这是一个功能。但是也有:not()
像其他答案提到的选择器。
您可以像以下示例一样使用.not函数来删除具有完全ID,包含特定单词的ID,以单词开头的ID等的项。请参阅http://www.w3schools.com/jquery/jquery_ref_selectors .asp,以获取有关jQuery选择器的更多信息。
按确切ID忽略:
$(".thisClass").not('[id="thisId"]').doAction();
忽略包含单词“ Id”的ID
$(".thisClass").not('[id*="Id"]').doAction();
忽略以“我的”开头的ID
$(".thisClass").not('[id^="my"]').doAction();
我只是抛出一个JS(ES6)答案,以防有人寻找它:
Array.from(document.querySelectorAll(".myClass:not(#myId)")).forEach((el,i) => {
doSomething(el);
}
更新(当我发布原始答案时可能有可能,但是无论如何现在都添加此内容):
document.querySelectorAll(".myClass:not(#myId)").forEach((el,i) => {
doSomething(el);
});
这摆脱了Array.from
用法。
document.querySelectorAll
返回NodeList
。
阅读此处以了解有关如何对其进行迭代(以及其他操作)的更多信息:https : //developer.mozilla.org/zh-CN/docs/Web/API/NodeList
$(".thisClass[id!='thisId']").doAction();
有关选择器的文档:http : //api.jquery.com/category/selectors/