我想检索具有一个数据键和多个值的所有对象,对于 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/