jQuery:select给定类的所有元素,除了特定的ID
这可能很简单。
我想select给定类thisClass
所有元素,除了id是thisId
。
即相当于(其中 – /意味着删除):
$(".thisClass"-"#thisId").doAction();
使用:不是select器 。
$(".thisclass:not(#thisid)").doAction();
如果您有多个ID或select器,只需使用逗号分隔符,另外:
(".thisclass:not(#thisid,#thatid)").doAction();
$(".thisClass[id!='thisId']").doAction();
关于select器的文档: http : //api.jquery.com/category/selectors/
我只是扔在一个JS(ES6)的答案,以防有人在寻找它:
Array.from(document.querySelectorAll(".myClass:not(#myId)")).forEach((el,i) => { doSomething(el); }
你可以像下面的例子一样使用.not函数来删除具有确切id的项目,包含特定单词的id,以单词开头的id等等。见http://www.w3schools.com/jquery/jquery_ref_selectors .asp有关jQueryselect器的更多信息。
通过确切ID忽略:
$(".thisClass").not('[id="thisId"]').doAction();
忽略包含单词“Id”的ID
$(".thisClass").not('[id*="Id"]').doAction();
忽略以“我的”开头的ID
$(".thisClass").not('[id^="my"]').doAction();
使用.not()
方法select整个元素也是一个选项。
如果您想直接对该元素执行另一个操作,这种方法可能有用。
$(".thisClass").not($("#thisId")[0].doAnotherAction()).doAction();