选择具有由data()设置的值的JQuery元素

时间:2012-07-01 01:29:14

标签: javascript jquery

  

可能重复:
  jquery data selector

我有几个带有'connection_name'类的元素。这些元素中的每一个都使用data()JQuery函数绑定到它的唯一id。我正在尝试查询以找到具有给定ID的元素,但我似乎无法使其工作。

为了这个测试,我创建了一个只有1个元素的页面,并设置了元素的id。

我可以验证是否正在设置id,就像我在控制台中查询元素时一样,它显示了返回的id:

$('.connection_name').data()
  Object
  id: "4fea76bd99ea080d19000002"
  __proto__: Object

我已经在其他任务/帖子上看到该元素应该由$('selector [data-attribute = value]')选择,但这似乎不起作用:

$('.connection_name[data-id="4fea76bd99ea080d19000002"]')
[]

更糟糕的是,即使我尝试选择它没有任何价值(仅仅通过属性),我仍然没有返回任何内容:

$('.connection_name[data-id]')
[]

我不确定问题是什么,或者如何去做。

1 个答案:

答案 0 :(得分:6)

这是一种方法:

var theItem = $('.connection_name').filter(function() {
    return($(this).data("id") === "4fea76bd99ea080d19000002");
});