Javascript 如何在jquery中用另一个文本多次替换一个文本?
我想用另一个单词替换html中文本中的一个单词。为此,我使用jquery的replace方法。如果这个词只出现一次,它就可以正常工作。但是如果这个词多次出现,我如何替换它呢。这是我的html代码Javascript 如何在jquery中用另一个文本多次替换一个文本?,javascript,jquery,html,Javascript,Jquery,Html,我想用另一个单词替换html中文本中的一个单词。为此,我使用jquery的replace方法。如果这个词只出现一次,它就可以正常工作。但是如果这个词多次出现,我如何替换它呢。这是我的html代码 <!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width, initial-scale=1"> &l
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
</head>
<body>
<div class="container-fluid" id="printableArea">
<h1>Hello World!</h1>
<p>Resize the browser window to see the effect.</p>
<div class="row">
<div class="col-sm-3 col-md-6" style="background-color:lavender;" id="datachange">
<p>Lorem ipsum dolor sit amet, ${doller} adipisicing elit, sed do eiusmod tempor ${currency} ut labore et dolore magna aliqua.</p>
<p> Ut enim ad minim veniam, quis ${doller} exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</p>
</div>
</div>
<div id="">
<h1>Print me</h1>
</div>
<select id="myselect">
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="opel">Opel</option>
<option value="audi">Audi</option>
</select>
<select id="currency">
<option value="doller">doller</option>
<option value="euro">euro</option>
<option value="rupees">rupees</option>
</select>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
<script>
var value = "${doller}",
value1 ="${currency}";
function changedata() {
$("#datachange").text(function () {
return $(this).text().replace(value, $("#myselect option:selected" ).text() );
});
value = $("#myselect option:selected" ).text() ;
}
$( document ).ready(function() {
changedata();
});
$('#myselect').on('change', function (e) {
changedata();
});
</script>
</body>
</html>
我正在使用changedata方法用下拉列表中的选定值替换${doller}。但它只替换了${doller}一次。jquery中的文本是否有任何替换所有类型的方法?使用正则表达式
function changedata() {
$("#datachange").text(function () {
var re = new RegExp(value, 'g');
return $(this).text().replace(re, $("#myselect option:selected" ).text() );
});
value = $("#myselect option:selected" ).text() ;
}
如果RegExp.escape{
RegExp.escape=functionvalue{
返回值.replace/[\-\[\]{}*+.,\\^$\124;\ s]/g\\$&
};
}
$document.readyfunction{
var text=$datachange.text,
value1=${doller},
值2=${currency},
reg1=新的RegExpRegExp.escapevalue1,'g',
reg2=新的regexp.escapevalue2,'g';
函数更改数据{
$datachange.textfunction{
返回text.replacereg1,$myselect.val;
};
}
变更数据;
$'myselect'。在'change'上,函数E{
变更数据;
};
};
你好,世界!
调整浏览器窗口的大小以查看效果
Lorem ipsum dolor sit amet,${doller}adipising elit,sed do eiusmod temporal${currency}ut laboure et dolore magna aliqua
但是,从最低限度上来说,我们的实验室是从一个普通消费者那里得到的
打印我
沃尔沃汽车
萨博
欧宝
奥迪
多勒
欧元
卢比
看看这个问题: