2016-09-29 41 views
-1

我試圖通過jquery隱藏內容中的文本元素specific。下面的例子。從內容中查找文本,然後使用jQuery隱藏

HTML:

<div id="name"> 
Trying hide specific Text elements from content. 
</div> 

我想這的jQuery:

<div id="name"> 
Trying hide <p style="display: none;">specific<p> Text elements from content. 
</div> 

目前的jQuery任何簡單的解決辦法?

回答

3

可以使用.html()方法。

另外,使用正則表達式,所以你可以隱藏所有他們。

像這樣:

var hideElm = 'specific', 
 
    regex = new RegExp(hideElm, 'g'); 
 

 
$('#name').html(function(i, html){ 
 
    return html.replace(regex, '<span style="display:none">' + hideElm + '</span>'); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="name"> 
 
Trying hide specific Text elements from content. Another specific 
 
</div>

0

試一次

$('#name').click(function(){ 
 
$('#name p').hide(); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="name"> 
 
Trying hide <p >specific</p> Text elements from content. 
 
</div>

0

,因爲它增加了一個新的線不要使用<p>

更改您的HTML:

<div id="name"> 
    Trying hide <span class="specific">specific</span> Text elements from content. 
</div> 

並添加代碼:

$('.specific').hide(); 
0

可以隱藏主要由以下幾個DIV中p元素。

$(#name> p).hide();

1

使用replace()方法

檢查這個片段:

$(document).ready(function() { 
 
    $('button').click(function() { 
 
    $('#name').html(function(index, text) { 
 
     return text.replace('specific', '<p style="display:none;">specific</p>'); 
 
    }); 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="name"> 
 
Trying hide specific Text elements from content. 
 
</div> 
 
<br /> 
 
<button>Hide</button>

+1

'replace'它不是一個jQuery方法,但vanila的JavaScript。 –

+0

感謝您指出這一點! –

0

如果你不想它,它自己的段落,則可以使用一個跨度。指定一個類或ID來跨度可能會是最好的,但你有什麼:

<div id="name"> 
Trying hide <p style="display: none;">specific<p> Text elements from content. 
</div> 

$(#name p).hide(); 

就可以了(找到的所有段落在名爲「名稱」的元素和隱藏)

1

如果你想從div中的文本中刪除這個詞,那麼你可以試試這個:

$('div:contains("Specific:")').each(function(){ 
    $(this).html($(this).html().split("Specific:").join("")); 
}); 

這將刪除所有div中的「Specific」字。你可以把元素ID從特定的div中刪除。

0

這是jQuery的

<script> 
    $(document).ready(function(){ 
    $('#name').find('.specific').hide(); 

    }); 
    </script> 

這是HTML

<div id="name"> 
      Trying hide <span class="specific">specific</span> Text elements from content. 
    </div>