Jquery如何在数据属性数组中选择包含特定值的元素?

     2023-05-09     23

关键词:

【中文标题】Jquery如何在数据属性数组中选择包含特定值的元素?【英文标题】:Jquery how to select elements containing specific value(s) in data attribute array? 【发布时间】:2021-02-06 09:23:32 【问题描述】:

假设我有以下元素

<div data-tags="[8,18,32,52,53,56]"></div>
<div data-tags="[8,2,3]"></div>
<div data-tags="[4,6,10]"></div>

现在我想选择其 data-tags 属性中具有“8”的元素,我将如何使用 jquery 来做到这一点? 我正在尝试 $('[data-tags~=8]') 也 $('[data-tags~="8"]') 但它们都不起作用。任何帮助表示赞赏。

编辑: 我不认为 $('[data-tags*=8]') 会是一个解决方案,因为它还会包含值为 18、86 804 等的项目,对吧?

【问题讨论】:

【参考方案1】:

您可以使用以下内容:

var found = $('div[data-tags]').filter(function() 
  return JSON.parse($(this).attr("data-tags")).indexOf(8) > -1
)

演示

var found = $('div[data-tags]').filter(function() 
  return JSON.parse($(this).attr("data-tags")).indexOf(8) > -1
)
var found2 = $('div[data-tags]').filter(function() 
  return JSON.parse($(this).attr("data-tags")).indexOf(18) > -1
)
console.log("Found",found.length, "by number 8");
console.log("Found",found2.length, "by number 18");
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div data-tags="[8,18,32,52,53,56]"></div>
<div data-tags="[8,2,3]"></div>
<div data-tags="[4,6,10]"></div>

【讨论】:

好吧,看起来这确实帮助我实现了我想要的。如果没有添加更清洁的解决方案(纯粹只是 jquery 选择器),我将再等一个小时,我会将您的解决方案标记为已接受的答案。谢谢 @Matrix 你可以使用$('div[data-tags*="8"]'),但这也会被18,28选中,以此类推 是的,我想会的。再次感谢。我对您的解决方案进行了一些修改(只是个人喜好)$('div[data-tags]').filter(function()return $.inArray(8, $(this).data("tags")) != -1;);

如何选择不包含部分数据属性值的元素?

】如何选择不包含部分数据属性值的元素?【英文标题】:HowcanIselectelementsthatdon\'tincludepartofdata-attributevalue?【发布时间】:2018-02-2303:28:16【问题描述】:我尝试在data属性中隐藏不包含部分文本的元素。这是一个例子。预期的结... 查看详情

在 jQuery 中,如果元素包含属性,无论其值如何,我如何找到它们? [复制]

】在jQuery中,如果元素包含属性,无论其值如何,我如何找到它们?[复制]【英文标题】:InjQueryhowdoIfindelementsiftheycontaintheattribute,regardlessofitsvalue?[duplicate]【发布时间】:2020-06-2820:11:21【问题描述】:在jQuery中,我可以像这样查... 查看详情

从 jsonb 数组包含具有特定属性的元素的表中选择

...cificproperties【发布时间】:2018-01-0514:14:45【问题描述】:如何选择具有jsonb数组的表中的行,该数组包含具有特定属性的元素?例如:如果jsonb如下"list":["name":"John","money":100,"name":"Dan", 查看详情

jquery中常用的选择器

...1> [attribute]概述:匹配包含给定属性的元素。示例jQuery代码:$("div[id]")描述:查找所有含有id属性的div元素2> [attribute=value]概述:匹配给定的属性是某个特定值的元素3>[attribute!=value]概述:匹配所有不含有指定的属性,... 查看详情

选择嵌套 JSON 数组包含特定值的行

...20-06-1809:11:19【问题描述】:我在Employee表中有几个这样的数据库行:EmpIdNameInformation1Eric“Experience”:[“Title”:“AssistantAccountant”,“Company”:“ComA”,“Year 查看详情

如何在 JavaScript/jQuery 中查找数组是不是包含特定字符串?

】如何在JavaScript/jQuery中查找数组是不是包含特定字符串?【英文标题】:HowtofindifanarraycontainsaspecificstringinJavaScript/jQuery?如何在JavaScript/jQuery中查找数组是否包含特定字符串?【发布时间】:2011-09-0106:27:05【问题描述】:谁能告... 查看详情

如何检查对象数组中这些对象中的特定属性?反应

】如何检查对象数组中这些对象中的特定属性?反应【英文标题】:HowdoIcheckanarrayofobjectsforaspecificpropertywithinthoseobjects?React【发布时间】:2022-01-2216:09:51【问题描述】:如果我有一个包含对象数组的数据,我如何检查每个对象是... 查看详情

jquery选择器之属性选择器

  [attribute] 匹配指定属性名的所有元素  [attribute=value]匹配给定的属性名是某个特定值的属性  [attribute!=value] 匹配给定的属性名不是某个特定值的属性  [attribute^=value]以开头  [attribute$=value]以结尾  [attribue*=... 查看详情

如何查询具有特定属性值的核心数据对象

】如何查询具有特定属性值的核心数据对象【英文标题】:howtoquerycoredataobjectwithspecificattributevalue【发布时间】:2014-03-1218:54:20【问题描述】:我有一个包含许多属性的核心数据实体,我需要能够根据一个属性的值访问它们。例... 查看详情

如何在数组中设置特定对象的状态

】如何在数组中设置特定对象的状态【英文标题】:Howtosetstateofaspecificobjectinarray【发布时间】:2020-04-2900:00:50【问题描述】:我有一个数组中的对象列表,其中包含用户值。我想根据用户选择更改特定对象。更具体地说,我有... 查看详情

机器人框架v4.5如何给选择提示添加额外的元数据?(代码片段)

...法使其工作!有什么办法可以解决这个问题吗?任何想法如何解决这个问题?答案继续看一下文档。你可以看到choices属性接收一个字符串数组或Choice对象。你不能只提供你想要的任何类型的对象,并期望SDK知道如何处理它,而... 查看详情

SimpleXML:选择具有特定属性值的元素

...共享相同名称的元素,但属性的值定义了它是什么类型的数据,我想从文档中选择所有具有特定值的元素。我是否需要使用XPath(如果需要,您能否建议正确的语法)还是有更优雅的解决方案?这是 查看详情

jQuery - 从选择器中排除具有特定值的输入

】jQuery-从选择器中排除具有特定值的输入【英文标题】:jQuery-excludeinputswithcertainvaluefromselector【发布时间】:2011-08-0316:36:48【问题描述】:我想选择我的div中的所有输入并将它们设置为新值,但我也想排除具有特定值的输入像... 查看详情

jQuery 选择器没有特定的数据属性

】jQuery选择器没有特定的数据属性【英文标题】:jQueryselectordoesnothavespecificdataattribute【发布时间】:2014-09-2912:47:51【问题描述】:我有一个属性被应用到我动态创建的div上,名为data-product。是否有一个选择器可以用来选择没有... 查看详情

如何在所有包含具有特定值的列的表中查找?

】如何在所有包含具有特定值的列的表中查找?【英文标题】:Howtofindinallthetablescontainingcolumnshavingparticularvalues?【发布时间】:2011-12-0909:25:03【问题描述】:我的目标是从数据库中找到所有具有特定值的给定列的表。IE。我有Tabl... 查看详情

如何在 C# 中使用正则表达式从具有特定属性和值的 HTML 标记中提取数据 [重复]

】如何在C#中使用正则表达式从具有特定属性和值的HTML标记中提取数据[重复]【英文标题】:HowtoextractdatafromHTMLtagwithspecificattributeandvalueusingregexinC#[duplicate]【发布时间】:2021-05-2703:56:00【问题描述】:我一直在尝试从一些HTML数据... 查看详情

如何在 Spark 中有效地选择包含某个值的数据框列?

】如何在Spark中有效地选择包含某个值的数据框列?【英文标题】:HowtoefficientlyselectdataframecolumnscontainingacertainvalueinSpark?【发布时间】:2020-11-3017:12:04【问题描述】:假设您在spark(字符串类型)中有一个数据框,并且您想要删... 查看详情

Jquery从具有数组/ JSON值的多个数据属性中检索数据

】Jquery从具有数组/JSON值的多个数据属性中检索数据【英文标题】:Jqueryretrievingdatafrommultipledataattributeswithwitharray/JSONvalues【发布时间】:2015-11-0511:58:34【问题描述】:我的页面上有几个元素具有相同的数据属性,但值不同。元素... 查看详情