鉴于我有一份类似的文件:
<div>
<div data-myAttr = "foo"></div>
<div data-myAttr = "bar"></div>
</div>
<div>
<div data-myAttr = "foo"></div>
<div data-myAttr = "bar"></div>
</div>
如何将包含数据-myAttr的所有元素与foo和bar分组?
编辑:这更像是一个理论问题。我没有尝试过失败的代码,但我正在为已经存在的代码探索更优雅的选项。
顺便说一句,谢谢你的-1!?编辑:有人可以将此标记为重复吗?在此处找到了适用的答案:Group and count HTML elements by data attribute in jQuery
答案 0 :(得分:2)
好的,这是我在这里的第一个回答,所以不要严厉地判断......在我的情况下,我的数组也有重复。我只是刚刚开始完全理解这一切是如何运作的,但这里是:
elements = $('div[data-myAttr]').map(function () {
return $(this).attr('data-myAttr');
});
然后按名称运行一个基本的js循环,以使用正确的attr获取所有元素。
答案 1 :(得分:0)
您可以使用attribute selector并将两个属性选择器与comma
;
<强> Live Demo 强>
$('[data-myAttr=foo], [data-myAttr=bar]')
您可以使用each()
$('[data-myAttr=foo], [data-myAttr=bar]').each(function(){
alert($(this).text());
});