获取没有以value开头的数据属性的所有列表项

Rya*_*ler 2 javascript jquery

我有一个元素列表,每个元素都有一个数据名称属性.我想选择所有不以前缀"arc"开头的元素并隐藏它们.

<ul id="slides">
  <li data-name="arc_1">...</li>
  <li data-name="arc_2">...</li>
  <li data-name="biz_1">...</li>
  <li data-name="biz_2">...</li>
  <li data-name="cas_1">...</li>
  <li data-name="cas_2">...</li>
  <li data-name="cas_3">...</li>
  <li data-name="prd_1">...</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

我试图使用,$('#slides li[data-name^="arc"]')但它选择了它需要的相反.

j08*_*691 9

用途:not():

$('#slides li:not([data-name^="arc"])')
Run Code Online (Sandbox Code Playgroud)

$('#slides li:not([data-name^="arc"])').css('color','red')
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<ul id="slides">
  <li data-name="arc_1">...</li>
  <li data-name="arc_2">...</li>
  <li data-name="biz_1">...</li>
  <li data-name="biz_2">...</li>
  <li data-name="cas_1">...</li>
  <li data-name="cas_2">...</li>
  <li data-name="cas_3">...</li>
  <li data-name="prd_1">...</li>
</ul>
Run Code Online (Sandbox Code Playgroud)