javascript - jQuery 查找具有一个数据键和多个值的数据属性

标签 javascript jquery

我想检索具有一个数据键和多个值的所有对象,对于 QuickSand:

<ul>
  <li data-company="Microsoft">Steve</li>
  <li data-company="Google">Jobs</li>
  <li data-company ="Facebook">Michael</li>
  <li data-company ="Google">Richard</li>
  <li data-company ="Facebook">Tim</li>
</ul>

如何检索数据公司 Microsoft 和 Google 的所有 li 项目(这两个值位于数组中),如下所示:

var itemes = $('ul').find('li[data-comapany={"Microsoft","Google"}]');

谢谢。

最佳答案

您可以创建所需公司的数组,并检查每个 li 是否包含在该数组中:

var companies = ["Microsoft", "Google"];

$(function() {

  var items = $('ul li').filter(function() {
    return $.inArray($(this).data("company"), companies) > -1;
  });

  items.css({
    "position": "relative",
    "margin-left": "25px"
  });
  console.log(items);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul>
  <li data-company="Microsoft">Steve</li>
  <li data-company="Google">Jobs</li>
  <li data-company="Facebook">Michael</li>
  <li data-company="Google">Richard</li>
  <li data-company="Facebook">Tim</li>
</ul>

关于javascript - jQuery 查找具有一个数据键和多个值的数据属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27335449/

相关文章:

javascript - 如何在 React 中将数据传递给 Chart.js 图表

javascript - 如何在不输入表单的情况下显示消息

javascript - 使用 Chutzpah 和 requirejs 测试 javascript

jquery - 网站在移动设备上没有响应

javascript - 使用 JSON 从 Ajax 调用获取未定义的数组类型

asp.net - 有关从 ASP.NET MVC 应用程序播放声音文件的建议

乱序执行的 Javascript 代码,我可以修复它吗?

javascript - 如何在 jquery ajax 模板中添加两个不同绑定(bind)变量的值,如 ${amount} 和 ${tax}?

javascript - Jquery 使用父级的 data 属性查找元素

javascript - 在 ReactJS 中手动刷新 Firebase 对象