2017-09-01 118 views
1

heyo,我怎样才能让这个脚本运行多个字

我目前坚持使用脚本。我想删除HTML标记中的特定单词,我无法更改标记。我搜索了一个解决方案,发现此脚本:

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

现在这个脚本工作正常,一个字(bad),但我想删除mutliple话这个脚本。所以我试了一下:

$(':contains("bad", "good")').each(function(){ 
    $(this).html($(this).html().split("bad","good").join("")); 
}); 

但是这根本不起作用。

这里有一个工作片断:

$(':contains("bad")').each(function(){ 
 
\t \t $(this).html($(this).html().split("bad").join("")); 
 
\t });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<div>A beautiful badsentence</div>

我如何工作的呢?

回答

4

只需.replace(/bad|good/g, '')。这里/g意味着替换所有的比赛,而不仅仅是第一个。 bad|good意味着替换任何这些。

$(document).ready(function() { 
 
    $('#text').text($('#text').text().replace(/good|bad/g, '')); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<span id="text">Some words are not as good or not as bad, but bad words may be good too.</span>

+0

,如何使这项工作时的话“好”和“坏”是这样写[好]和[不良]? – Pelle2010

+0

@ Pelle2010使用RegEx'/ \ [(good | bad)\] /' – Justinas

0

你可以试试这个:

var replaced = $('#text').text().replace("good", '').replace("bad", ''); 
$('#text').text(replaced); 
相关问题