您好,匿名用户
随意问技术百科期待您的加入

如何通过dom私有属性的某个值获得该对象

0 投票

我不知道这个问题的标题应该怎么问,有下列html

<a data-user="{ '_id': 1, 'name': 'lilei', 'age': 25 }">...</a>
<a data-user="{ '_id': 2, 'name': 'hanmm', 'age': 24 }">...</a>
<a data-user="{ '_id': 3, 'name': 'green', 'age': 23 }">...</a>

比如我想获得 '_id'=1 的这个dom 进行其他操作 $('a<_id=1这里应该怎么写>')

用户头像 提问 2012年 12月1日 @ Amumu 上等兵 (340 威望)
分享到:

1个回答

0 投票
 
最佳答案

jQuery没有直接的选择器可以用来对 dataset 中的属性进行筛选,可以使用 filter 进行过滤。

$('a').filter(function(){
    return  $(this).data('user').indexOf("'_id': 1")!=-1;
    //上面可以将data('user')的数据转换为 JSON 再读取_id属性筛选,但是觉得转换成本太高。
   })

我觉得最方便高效的方法是将整个user数据分拆成三个 dataset 属性用 jQuery 的属性选择器读取。

<a data-id="1" href="#">test</a>
$('a[data-id="1"]');
用户头像 回复 2012年 12月1日 @ Karthus 上等兵 (227 威望)
选中 2012年 12月1日 @Amumu
提一个问题:

相关问题

+1 投票
1 回复 248 阅读
用户头像 提问 2012年 12月1日 @ Lady 上等兵 (162 威望)
0 投票
1 回复 29 阅读
0 投票
0 回复 24 阅读
0 投票
0 回复 76 阅读
用户头像 提问 2012年 12月1日 @ Shen 上等兵 (318 威望)
0 投票
1 回复 27 阅读

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...