将元素匹配到数据属性值的一部分?

时间:2018-05-15 11:54:34

标签: javascript jquery

我有一段代码,它针对的是一个在数据属性中没有匹配值的元素。如果单击某个按钮,则此属性中没有匹配值的所有元素都将显示。

例如:

<div data-the-vals="Female_Young.Dev,Male_Mid.Project"></div>

然后在我的jquery中我试图访问'data-the-vals'以查看是否存在任何这些值,如下所示:

$('div.professions:not([data-the-vals="' + myElementVal + '"])');

myElementVal可以等同于'Female_Young.Dev',或'Male_Mid.Project'。

在控制台中我得到了以下内容:

$('div.professions:not([data-the-vals="Female_Young.Dev"])');

这是我想要的,但它似乎无法找到这个div,因为它找到了“Female_Young.Dev,Male_Mid.Project”而不是我想要的值的第一部分。是否可以将其拆分,或者能够搜索data-the-vals属性以查看它是否以某种容量存在?

1 个答案:

答案 0 :(得分:3)

因此请使用attribute contains而不是等于。

$('div.professions:not([data-the-vals*="Female_Young.Dev"])');