Get Element Where Data Attribute == Something

Get Element Where Data Attribute == Something

本文关键字:Something Attribute Data Element Where Get      更新时间:2023-09-26

在jQuery或JavaScript中,我想要获得一个元素,或者更确切地说,通过其数据属性选择一个元素。然后使用addClass将CSS类应用于所选元素。

有人知道怎么做吗?我尝试了所有不同的.attr和.prop方法,但它们并不能满足我的要求,因为我事先不知道元素的ID或任何东西,因为它是动态设置的。

您可以使用jQuery选择器:

$('[data-something="something"]')

或以开头

$('[data-something^="something"]')

结束于:

$('[data-something$="something"]')

然后你可以使用:

$('[data-something="something"]').addClass(new_class_name);

以上内容将匹配具有以下功能的所有元素:

<tag data-something="something"></tag>

并给他们一个类别new_class_name

使用属性等于选择器

$("p[data-yourdata='whatever']")

如果你想使用原生JavaScript方法,并且不担心浏览器对IE8及以下版本的支持,你可以使用querySelector或querySelectorAll,如下所述:JavaScript:select all elements with"数据-";属性(不带jQuery)

也就是说,如果您已经习惯于使用jQuery的addClass和/或其他选择器方法,那么使用上面列出的选择器可能会更容易。

这个答案很好地分解了jQuery与本机选择器的优势/成本:jQuery与document.querySelectorAll