【问题标题】:Jquery find a div with innertext and hideJquery找到一个带有innertext的div并隐藏
【发布时间】:2014-04-05 14:54:21
【问题描述】:

我有一个如下的 div,我需要根据内部文本子句隐藏特定的 div。

  1. 当内部文本等于单词 XXX 时隐藏 div
  2. 当内部文本包含单词 XXX 时隐藏 div
<div>first div <div>second div <div>third div <div style="position: absolute; padding: 2px; top: 0px; left: 1px; color: white;">XXX</div>/div>/div>/div>

【问题讨论】:

  • 通过下面的小提琴演示查看更新的答案。

标签: jquery hide innertext


【解决方案1】:

试试这个:

$('div:contains("XXX")').hide().parents('div').show();
// hides the div which holds the word 'XXX' and shows the parent

Demo

【讨论】:

    【解决方案2】:

    1) 你可以使用text()

    $.each($('div'), function() {
        if($(this).text() == "XXX" {
            $('div').hide();
        }
    });
    

    2) 你可以使用:contains selector

    $('div:contains("XXX")')hide()
    

    【讨论】:

      【解决方案3】:

      使用:

      $('div:contains("XXX")')hide()
      

      您应该为 div.say 使用类或 id 选择器:

      <div id="txtDiv" style="position: absolute; padding: 2px; top: 0px; left: 1px; color: white;">XXX</div>
      

      脚本:

      $('#txtDiv:contains("XXX")')hide()
      

      【讨论】:

      • 如果至少有一个包含“someText”,第一个示例将隐藏页面上的每个&lt;div /&gt;。只需使用$('div:contains("someText")').hide()
      • 这是隐藏所有 div 我只需要隐藏具有 XXX 但按原样显示第 2 和第 3 的 div。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-11-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多