jQuery数据选择器不匹配.data

时间:2013-07-20 11:15:36

标签: jquery custom-data-attribute jquery-data

我有一个选择器:$('div.data[data="true"]').not('div.data[data-loading="true"]')

我在元素上使用.data("data-loading","true")

<小时/> 的问题:

由于.data未真正设置.prop之类的属性,因此上述.not选择器与我将上述.data设置为的元素不匹配。是否有选择器我可以使用.data设置的匹配数据,或者除了.prop之外我还必须使用.data吗?

1 个答案:

答案 0 :(得分:1)

没有选择器匹配您通过.data功能放在元素上的数据。在您的情况下,您可以轻松地将其作为属性。您的选择器已在查找属性,因此只需更改

即可
.data("data-loading","true")

.attr("data-loading","true")

div.data[data="true"]选择器无效,除非div上有一个名为data的属性,正如您所观察到的那样,没有(并且不应该)是的,这将是一个无效的属性。)

如果你需要标记存储数据的div,我会使用一个类。我可能还会使用data-loading标志的类。