繁体   English   中英

选择没有任何包含字符串的类的元素

[英]Select elements that don't have any classes containing a string

我想要一个jQuery选择器,它选择没有包含字符串'-text'的类的任何元素;

例如,以下内容:

<img class="cow" > 
<img class="monkey" > 
<img class="cow-text" > 
<img class="monkey-text" > 

我想选择:

<img class="cow" > 
<img class="monkey" >

我知道我需要使用not ,但我不能确定的格式。 以下结果未选择任何项目:

$('.panel').find('.layer').not('[class*="-text"]');

如果类始终以“ -text”结尾,则应使用EndsWith选择器,例如

panel.find('img').not('[class$="-text"]');

要么

panel.find('img:not([class$="-text"])')

这是一个更精确的解决方案,通配符选择器意味着像some-text-class-text-class这样-text-class也会被错误地拾取。

尝试

panel.find('img').not('[class*="-text"]');

尝试查找所有img元素并删除所有,以-text结尾。 并将每个元素用于多个元素。 例如class =“monkey-text”

$("img").not("[class$='-text']").each(function(){
  alert($(this).attr("class"));
});

第二个预览显示字符串text-在字符串的开头。 只需将$替换$ ^例如class =“text-monkey”

$("img").not("[class^='text-']").each(function(){
  alert($(this).attr("class"));
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM