jquery如果span包含此项,则隐藏此项

jquery如果span包含此项,则隐藏此项,jquery,Jquery,我已经创建了一个脚本来定位1个元素,并基于find来隐藏不同的元素。 问题是这是一个目录,所以有许多div具有相同的项目、ID等。 是否可以更改脚本,使其在找到1后逐个记录而不是全部执行操作 这是HTML(2项-请记住,可能更多) 媒体类: 电子书 媒体类: 奥迪奥 媒体类: 奥迪奥 媒体类: 电子书 使用的脚本: <script type="text/javascript"> $(function () { var checkExist = setInterva

我已经创建了一个脚本来定位1个元素,并基于find来隐藏不同的元素。 问题是这是一个目录,所以有许多div具有相同的项目、ID等。 是否可以更改脚本,使其在找到1后逐个记录而不是全部执行操作

这是HTML(2项-请记住,可能更多)


媒体类:
电子书
媒体类:
奥迪奥
媒体类:
奥迪奥
媒体类:
电子书
使用的脚本:

    <script type="text/javascript"> $(function () {
    var checkExist = setInterval(function () {
        if ($('.katalog-record-container.katalog-library-record .katalog-record-media span:contains("eBook")').length > 0) {
            $('.katalog-record-container.katalog-library-record .katalog-record-right').hide();
        }
        clearInterval(checkExist);
    }, 10);
});
</script>
$(函数(){
var checkExist=setInterval(函数(){
如果($('.katalog-record-container.katalog-library-record.katalog记录媒体跨度:包含(“电子书”)。长度>0){
$('.katalog-record-container.katalog-library-record.katalog record right').hide();
}
clearInterval(检查存在);
}, 10);
});
但看起来,当它找到电子书时,它会删除所有div的可用性,而且不应该这样做,因为并非所有div都是电子书

请帮忙

$(function () {
    var checkExist = setInterval(function () {
        if ($('.katalog-record-container.katalog-library-record .katalog-record-media span:contains("eBook")').length > 0) {
        $('.katalog-record-container.katalog-library-record .katalog-record-media span:contains("eBook")').next().hide();  // Change this line only.
        }
        clearInterval(checkExist);
    }, 10);
});
我猜你想隐藏span“eBook”后面的“Available for loan”项目,然后再做其他解释。 选中此项:

我猜你想隐藏span“eBook”后面的“Available for loan”项目,然后再做其他解释。
选中此项:

您应该迭代包含跨距的div。这是工作代码:

$(function() {
  $.each($('.katalog-record-media'), function() {
    if ($(this).children('.katalog-value').text()==='eBook') {
      $(this).children('.katalog-record-right').hide();
    }
  })
});

这里是一个演示:

您应该迭代包含跨度的div。这是工作代码:

$(function() {
  $.each($('.katalog-record-media'), function() {
    if ($(this).children('.katalog-value').text()==='eBook') {
      $(this).children('.katalog-record-right').hide();
    }
  })
});

这里有一个演示:

这段代码很好,但是删除了所有最上面的DIV中的措辞,我想修改它,所以逐个单独查看DIV,然后只删除找到单词的DIV中的工作-抱歉,只是想澄清一下,我不认为我在帮助:)过度描述它

$(function() {
      var checkExist = setInterval(function() {
          if ($('.katalog-record-media span:contains("eBook")').length > 0) {
            $('.katalog-record-right').hide();
          }
          clearInterval(checkExist);
        }, 10);
      });

顺便说一句,checkExist很重要,因为文本可能从一开始就不在那里。

这段代码工作正常,但删除了所有顶部DIV中的措辞,我想对此进行修改,因此逐个单独查看DIV,然后仅删除找到该单词的DIV中的工作-抱歉,只是想澄清一下,我不这么认为我在帮忙:)描述得太多了

$(function() {
      var checkExist = setInterval(function() {
          if ($('.katalog-record-media span:contains("eBook")').length > 0) {
            $('.katalog-record-right').hide();
          }
          clearInterval(checkExist);
        }, 10);
      });

顺便说一句,checkExist很重要,因为文本可能从一开始就不存在。

抱歉,不确定为什么更多的SCIPS与此冲突,但它不起作用:(抱歉,不确定为什么更多SCIPS与此冲突,但它不起作用:(你到底想要什么?页面上有许多记录,每条记录都有自己的DIV,因此我希望脚本逐个查看它们,并逐个执行操作。如果在最上面的DIV中有“eBook”,则在同一个DIV中(并且只有该DIV)隐藏“Available for loan”。然后检查下一个DIV等。由于一些DIV没有单词eBook,因此脚本将隐藏以供借阅。希望这很清楚:)你到底想要什么?页面上有许多记录,每个记录都有自己的DIV,因此我希望脚本逐个查看它们,并逐个执行操作。如果在最上面的DIV中,则有“eBook”然后在同一个div中(并且只有该div)隐藏“Available for loan”。然后检查下一个div等。因为有些div没有单词eBook,所以脚本将隐藏Available for loan。希望这很清楚:)