在Jquery中搜索每个具有data属性的对象

罗希特·基肖尔(Rohit Kishore)

我正在尝试使用每个功能在列表中进行搜索。我正在使用数据属性进行搜索。这是html:

<div class="tag_p" data-search-term="name" data-tag="apple, mango, orange, grapes"></div>

有几个这样的div。我正在使用此jquery函数使用data-search-term在div中进行搜索。

$('.tag_p').each(function(){
    if ($(this).filter('[data-search-term *= ' + searchTerm + ']').length > 0 || searchTerm.length < 1)  {
        $(this).show();
    } else {
        $(this).hide();
    }
});

它运行良好,但是我需要搜索数据标签属性。例如。如果输入,orange则应搜索数据标签;如果输入name,则应搜索数据搜索字词。我尝试使用这个:

if (($(this).filter('[data-search-term *= ' + searchTerm + ']').length > 0 || searchTerm.length < 1)
    || ($(this).filter('[data-tag *= ' + searchTerm+ ']').length > 0 || searchTerm.length < 1)) {
    // ...
}

但这是行不通的。

rk

您需要同时检查data-search-termdata-tag属性,请尝试此操作。

  1. 检查两个属性中的任何一个中是否都存在搜索字符串

    filter('[data-search-term*="searchTerm"], [data-tag*="searchTerm"]')

  2. 检查两个属性中是否都存在搜索字符串

    filter('[data-search-term*="searchTerm"][data-tag*="searchTerm"]')

我使用了toggle函数来摆脱if,添加了一个overlay if,以便仅对我们的条件进行评估。

$('#search').on('input', function() {
  var searchTerm = $.trim(this.value);
  $('.tag_p').each(function() {
    if (searchTerm.length < 1) {
      $(this).show();
    } else {
      $(this).toggle($(this).filter('[data-search-term*="' + searchTerm + '"], [data-tag*="' + searchTerm + '"]').length > 0);
    }
  });
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<div class="tag_p" data-search-term="name" data-tag="apple, mango, orange, grapes">Name1</div>
<div class="tag_p" data-search-term="name2" data-tag="kerala, goa, delhi">Name2</div>
<div class="tag_p" data-search-term="name3" data-tag="who, what, where">Name3</div>
<div class="tag_p" data-search-term="name4" data-tag="water, oil">Name4</div>
<div class="tag_p" data-search-term="name5" data-tag="english, hindi">Name5</div>
<input type="text" id="search" value="">

演示

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Jquery中搜索每个具有data属性的对象

来自分类Dev

从具有部分属性值的列表中搜索对象

来自分类Dev

在javascript或jQuery中,哪种对象具有.element属性

来自分类Dev

在具有特定属性的数组中搜索

来自分类Dev

如何在具有每个属性的列的ListView中显示对象列表

来自分类Dev

AngularJS对ngRepeat中的对象数组进行过滤不会还原具有空搜索属性的项目

来自分类Dev

AngularJS对ngRepeat中的对象数组进行过滤不会还原具有空搜索属性的项目

来自分类Dev

jQuery,在匹配的元素中搜索属性中具有值的元素

来自分类Dev

Terraform输出对象具有针对每个`for`资源的多个属性?

来自分类Dev

在jQuery数组中查找每个对象具有多个元素的字符串

来自分类Dev

将具有相同属性的两个对象的方法合并到每个属性的数组中

来自分类Dev

将具有相同属性的两个对象的方法合并到每个属性的数组中

来自分类Dev

在CasperJS中获取具有特定(data-)属性的每个元素

来自分类Dev

在KnockoutJS中具有对象属性的forEach

来自分类Dev

jQuery:选择具有不同特定属性的每个元素

来自分类Dev

jQuery每个循环遍历具有多个对象的数组

来自分类Dev

在MongoDB中的数组中搜索具有特定值的对象

来自分类Dev

具有子类的抽象集合中的JPA条件搜索属性

来自分类Dev

使用Linq在XDocument中搜索具有某些属性的XElement

来自分类Dev

spring-data-mongodb中不具有“ _class”属性的对象的默认实现映射

来自分类Dev

TypeScript中具有通用每个键的映射对象类型

来自分类Dev

在 tinkerpop gremlin 中,如何搜索有对象列表的顶点的属性?

来自分类Dev

jQuery切片具有属性的对象

来自分类Dev

从列表中删除具有最低Num属性的重复对象

来自分类Dev

NSPredicate在NSSet中查找具有属性的对象

来自分类Dev

从Swift数组中删除具有重复属性的对象

来自分类Dev

在数组中查找具有属性的对象

来自分类Dev

PHP检查数组中是否存在具有属性的对象

来自分类Dev

Python获取具有匹配属性的列表中的对象

Related 相关文章

  1. 1

    在Jquery中搜索每个具有data属性的对象

  2. 2

    从具有部分属性值的列表中搜索对象

  3. 3

    在javascript或jQuery中,哪种对象具有.element属性

  4. 4

    在具有特定属性的数组中搜索

  5. 5

    如何在具有每个属性的列的ListView中显示对象列表

  6. 6

    AngularJS对ngRepeat中的对象数组进行过滤不会还原具有空搜索属性的项目

  7. 7

    AngularJS对ngRepeat中的对象数组进行过滤不会还原具有空搜索属性的项目

  8. 8

    jQuery,在匹配的元素中搜索属性中具有值的元素

  9. 9

    Terraform输出对象具有针对每个`for`资源的多个属性?

  10. 10

    在jQuery数组中查找每个对象具有多个元素的字符串

  11. 11

    将具有相同属性的两个对象的方法合并到每个属性的数组中

  12. 12

    将具有相同属性的两个对象的方法合并到每个属性的数组中

  13. 13

    在CasperJS中获取具有特定(data-)属性的每个元素

  14. 14

    在KnockoutJS中具有对象属性的forEach

  15. 15

    jQuery:选择具有不同特定属性的每个元素

  16. 16

    jQuery每个循环遍历具有多个对象的数组

  17. 17

    在MongoDB中的数组中搜索具有特定值的对象

  18. 18

    具有子类的抽象集合中的JPA条件搜索属性

  19. 19

    使用Linq在XDocument中搜索具有某些属性的XElement

  20. 20

    spring-data-mongodb中不具有“ _class”属性的对象的默认实现映射

  21. 21

    TypeScript中具有通用每个键的映射对象类型

  22. 22

    在 tinkerpop gremlin 中,如何搜索有对象列表的顶点的属性?

  23. 23

    jQuery切片具有属性的对象

  24. 24

    从列表中删除具有最低Num属性的重复对象

  25. 25

    NSPredicate在NSSet中查找具有属性的对象

  26. 26

    从Swift数组中删除具有重复属性的对象

  27. 27

    在数组中查找具有属性的对象

  28. 28

    PHP检查数组中是否存在具有属性的对象

  29. 29

    Python获取具有匹配属性的列表中的对象

热门标签

归档