根据数据属性搜索html元素

时间:2011-08-23 05:19:42

标签: javascript jquery

有没有办法根据数据属性搜索元素?

我有以下代码,想知道如何实现

<UL>
    <LI data-relation_id=1/>
    <LI data-relation_id=1/>
    <LI data-relation_id=1/>
    <LI data-relation_id=2/>
    <LI data-relation_id=2/>
    <LI data-relation_id=2/>
    <LI data-relation_id=3/>
    <LI data-relation_id=3/>
    <LI data-relation_id=3/>
</UL>

在点击事件中,我基本上想找出属于特定数据关系的所有项目?

function getRelatedObjects(relationId){
   //Search all the li's and get the LI 
   //that have the data-relation_id== relationId

}

可以使用jquery完成吗?

2 个答案:

答案 0 :(得分:5)

data属性只是一个属性,因此您可以使用属性选择器。

$('li[data-relation_id='+relationId+']')

答案 1 :(得分:0)

您不能专门按关联数据进行搜索,但如果数据是按属性设置的,那么您可以使用属性选择器进行搜索:

function getRelatedObjects(relationId){
   return $('li[data-relation_id="'+relationId+'"]');
}

JSFiddle